A social platform that allows viewing stories based on geographical location
- A local social app where people can share (anonymously or otherwise) personal histories attached to specific locations. Ranging from historical tidbits and recommendations to personal stories about life events or emotions connected to this location.
- Users can become tourists in familiar locations, viewing the world through other's eyes, as well as a more intimate peak into
- Main interface is a map of local stories.
- Only a users immediate surroundings can be seen?
- A backend server, written in Python using FastAPI.
- A MongoDB database.
- A react frontend.
Deployment is automated using docker via docker-compose
This project is under the MIT License.
Feel free to report bugs and open issues in this repository.
Code contributions are welcomed!
First, read the guidelines at the Backend and Frontend sections in order to setup a development environment.
Afterwards:
- Fork this repository.
- Apply your code changes in your forked branch.
- Open a pull request.
- Tasks are tracked using GitHub issues
- We use GitHub Kanban board for planning - https://github.com/OSS-team-zulu/Zulu/projects/1
- FE lead - Joshua Herskowitz - https://github.com/jherskow
- Frameworks + QA - Batkiller Ariel -https://github.com/BatkillerAriel
- Security - Nitai Mordechai - https://github.com/Nitay880
- Data Science & BI - Matanel Oren - https://github.com/matanel-oren
- BE lead- Nadav Goldin - https://github.com/nvgoldin
- docker-compose, or Docker Desktop if you have Windows 10 (version 2004 and above) (just make sure it is running before you start developing).
- python 3.8
- npm
- GNU Make. If you don't have make, just open the Makefile and run the relevant commands.
- mkvirtualenv will make the Python virtual environments managment easier, but you can use your favorite. In Windows 10 just run
pip install virtualenvwrapper-win
to install it.
-
Clone this Repository:
git clone https://github.com/OSS-team-zulu/Zulu.git cd Zulu
-
Create a new virtual environment with Python 3.8 and activate it. If you have virtualenvwrapper, simply run
mkvirtualenv -p python3.8 zulu
to create, andworkon zulu
to activate. -
install the dependencies via:
make install
make run_full
For reduilding the full stack, run:
make build_full
Once running, the web UI can be found at: http://localhost:8085. An autogenerated Backend API interface is at: http://localhost:8086/docs.
make run_frontend
-
The react site should be live at http://localhost:3000
-
If live reloading is not working, you may need to install Chrome Allow CORS extension and enable it while developing.
-
To integrate with the backend, make sure it is running at http://localhost:8342
- Make sure you are in the right virtual environment, such that a
python
command calls Python 3.8, and the requirements were installed viamake install
- Run:
make run_backend
- The server should be live at http://0.0.0.0:8342
- Auto-generated API documentation can be found at http://0.0.0.0:8342/docs
In order to load a sample data from Israel:
- Make sure your API server and MongoDB are running
- Run:
python contrib/load_points.py
Run (warning: the tests would remove the DB data):
make run_tests