Skip to content

An app that takes care of an event outside-of-home: From organizing to communicating with your friends and finding the exact spots

Notifications You must be signed in to change notification settings

final-project-hha/final-project

Repository files navigation

Eventeger API

Your Social Event Manager Final Project at DCI by Hugo, Hila, Alex

Our app is the result of joining two ideas:

  • An app that brings together the logistic aspects of creating and managing a small event
  • A social app that allows you to stay connected with your loved ones or remote networks

Features:

🏕 Creating group with a common passion, interest or connection
👯‍♂️ Adding and removing members from the group
🔐 Only admins are authorized to edit group details and add people to group
💂 Set or remove admins
📆 Creating events
⛔️ Only members of the group are authorized to create and view events within the group
📷 Uploading photos to the group with the option to like and comment on them
🧭 Navigating to Event location via google maps

Demo of the creation of Event in a specific group:

Eventeger_demo.mov

Technologies and Methodologies:

  • Django RestFramework

  • Swagger for better transperany with endpoints

  • Docker for hosting DB

  • Postgres as ORM

  • Authentication to the API

  • Role-based permissions to the app modules (Group-based authorization and role-based within the groups)

  • CRUD operations for groups, events, users and photos

  • Automation of all processes to enable transparency and flow within the team, including Github actions for CI/CD, Flake8 and test-coverage reports (threshold 90%, currently standing on 97%)

  • Test Driven Development approach to minimize pitfalls

Under Construction:

  • Chat
  • Inventory list with incremental search and quantities that auto-update
  • To do list
  • Calendar
  • Gmail sign in
  • Event Timeline
  • Deploy to Google Cloud Platform

Run our project locally

Requirements:
git installed
python 3.8>.10
django

  • Install python-venv packages: apt install python3.10-venv
  • Install a virtual enviroment using the command line:
    python3 -m venv .venv
  • Activate the venv: . .venv/bin/activate
  • Install the requirements of the project: pip install -r requirements.txt
  • Install Docker
  • create an image maping the localhost and the port 2022 docker run -d --name <image_name> -p 127.0.0.1:2022:2022 -e POSTGRES_PASSWORD=postgres postgres
  • run the image: docker start <image_name_or_id>
  • Go to the container and open posgresql: docker exec -it postgres bash psql -U postgres
  • Create a database called eventeger_db: postgres=# CREATE DATABASE eventeger_db;

Make migrations and run the server

After the database is set up with docker we need to make migrations and migrate by using the following commands:

  • Inside the directory of the project: python3 manage.py makemigrations && migrate
  • After all migrations are done we can run the server an look the endpoints in the documentation url http://127.0.0.1:8000/api/docs/ python manage.py runserver

About

An app that takes care of an event outside-of-home: From organizing to communicating with your friends and finding the exact spots

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages