Go to file
2024-03-01 19:43:31 -05:00
.vscode intialize backed project + starter code 2024-03-01 19:43:31 -05:00
backend intialize backed project + starter code 2024-03-01 19:43:31 -05:00
compass Edited Input UI 2024-02-18 03:14:15 +00:00
.gitignore intialize backed project + starter code 2024-03-01 19:43:31 -05:00
docker-compose.yml intialize backed project + starter code 2024-03-01 19:43:31 -05:00
README.md intialize backed project + starter code 2024-03-01 19:43:31 -05:00

🧭 Compass Center's Internal Resource Management App

🛠 Technologies

  • Next.js
  • TailwindCSS
  • TypeScript
  • PostgreSQL

📁 File Setup

\compass
    \components // Components organized in folders related to specific pages
    \pages // Store all pages here
        \api // API routes
    \public // Local assets (minimize usage)
    \utils // Constants, Routes, Classes, Dummy Data
    \styles // CSS files

🚀 To Start

Follow these steps to set up your local environment:

\\ Clone this repository
git clone https://github.com/cssgunc/compass.git
\\ Go into main folder
cd compass
\\ Install dependencies
npm install
\\ Run local environment
npm run dev

Also add following variables inside of a .env file inside of the backend directory

\\ .env file contents

POSTGRES_DB=compass
POSTGRES_USER=postgres
POSTGRES_PASSWORD=admin
POSTGRES_HOST=db
POSTGRES_PORT=5432
HOST=localhost

Install necessary python packages

\\ Change directory from compass into backend directory
cd backend

\\ Install python dependencies
pip3 install -r requirements.txt

Backend Starter

Follow these steps to start up Postgres database:

Make sure you have Docker installed!


\\ Spins up local postgres database and pgadmin
docker-compose up -d

\\ Stop and teardown containers
docker-compose down

\\ Stop and teardown containers + volumes (full reset)
docker-compose down -v

Accesing pgAdmin 4

  • First go to http://localhost:5050/ on your browser
  • Log in using the credentials admin@example.com and admin
  • Click Add New Server
  • Fill in the name field with Compass (can be anything)
  • Click Connection tab and fill in the following:
    • Host name/address: db
    • Maintence database: compass
    • Username: postgres
    • Password: admin
  • Click Save at the bottom to add connection
  • Click Server dropdown on the left and click through items inside the Compass server

Testing Backend Code

  • Write tests for any service you create and any function in those services
  • Make sure to add docstrings detailing what the file is doing and what each test is doing
  • Name all test functions with test_testContent
  • Utitlize dependency injection for commonly used services
\\ Run all tests by being in the backend directory
pytest

\\ Run specific tests by passing in file as a parameter
pytest [fileName]

💡 Dev Notes

  • For each task, create a branch in the format '[your name]-[ticket number]-[task description]'
  • Only commit your work to that branch and then make a git request to '/main'
  • When creating new files in the backend and code is in python make sure to add a docstring for the file and any function you create ("""[content]"""")