The Collectors was originated by a team of students working on a project for the Software Design & Documentations course at Rensselaer Polytechnic Institute. This project's purpose and design is to consolidate all clubs and organizations affiliated with RPI.
Team Lead - UHY#8394 (Discord)
Directions to install necessary packages and dependencies for the project. First clone the repository on your machine. - note: we highly recommend you to use Github Desktop with VScode.
- Download and install latest Python at https://www.python.org/downloads/
- When installing, make sure that:
- Python.exe is added to PATH
- pip is also installed
- Download the MongoDB Community Server at https://www.mongodb.com/try/download/community
- Make sure install MongoDB Compass is checked. You can also download at https://www.mongodb.com/try/download/compass
- After MongoDB Compass is installed, it should open up with a new connection window. Save and connect the default connection.
- note: for new connection, use 'mongodb://localhost:27017' as default.
- Open MongoDB Compass.
- Connect to localhost, and then click 'Create database'
- Enter 'TheCollectors' for Database Name, and 'Clubs' for Collection Name.
- now you will have TheCollectors.Clubs database.
- Go to TC\backend\external data from your workspace (should be downloaded by repository cloning), and find 'Clubs.json' file.
- From MongoDB Compass, click ADD DATA and select Import JSON or CSV file.
- Import 'Clubs.json' from TC\backend\external data.
- Download and install latest Node.js at https://nodejs.org/en. This will also download npm which we need. Check automatically install necessary tools when prompted. Restart your computer.
- Open up a new terminal and
cdto the frontend folder. Typenpm install. This should install all necessary frontend packages.
- Open up a new terminal and
cdto the backend folder. Typepip install pipenvin ther terminal. If you are getting an error that the command pip does not exists, it means you haven't added Python Scripts to your PATH.
- Once pipenv is installed, type
pipenv shelland thenpip install -r requirements.txt. This installs all backend packages we need.

Directions for launching the project once the necessary packages have been installed.
- To start the backend, navigate to the backend folder in the terminal and start a virtual environment with
pipenv shell. Then typeuvicorn main:app --reload.- note: type
/docsto the end of the URL to see the FastAPI backend commands.
- note: type
- To start the frontend, navigate to the frontend folder in the terminal (new prompt should be opened for frontend) and type
npm start.- It will open new Windows Internet Explorer (or Google Chrome), with http://localhost:3000.
- To see the list of clubs in the database, start MongoDB and connect to the localhost database (default - should be saved). You will see The Collectors database on the left hand side.
Deploying can be vary depend on the host use. Please refer to react's deployment guide.
- Before start, we will use styled-components for overall styling. Therefore, no *.css file will be exist, instead, all styling will included within the corresponding *.js file.
- Common (many-used) style will be stored in CommonStyling.js file.
- https://styled-components.com/
- For clear visual of styled-components, install vscode-styled-componets from vscode Extentions (Available on the left).
- Overriding styles only works for (top -> bottom) order.
- Fonts are implemented through fonts.js file. Please look through previously implemented code (the @font-face) and implement the other.
- Some fonts are not allowed to use, please check the lisence of code carefully.
- Some fonts are only applied for caplital letters, please comment it under @font-face when implementing those kinds.