Skip to content

mufasa159/odyssey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Odyssey

This is an interactive map website. You can add/edit/delete locations on a map from the admin panel.

Built with starlette, jinja2 and sqlite3.

Development

  1. Create a virtual environment:

    python3 -m venv .venv
  2. Activate the virtual environment:

    source .venv/bin/activate  # unix / osx
    .venv\Scripts\activate     # windows
  3. Install the required packages:

    pip3 install -r requirements.txt
  4. Create a .env file in the root directory with copied contents from .env.example and set your own secret key.

  5. Run the application:

    python3 main.py
    
    # or directly with uvicorn
    uvicorn main:app --reload
  6. In a separate terminal, run the database seed script to set up the initial SQLite database:

    python3 scripts/seed.py
  7. Open your web browser and navigate to http://127.0.0.1:8000/register to create a new admin account.

Quick Demo

odyssey_v1.0.0.mp4

Planned Features

  • Map integration (leaflet & openstreetmap)
  • User authentication
  • Admin panel
    • UI
    • CRUD
      • Create a new location
      • View a list of all locations
      • Edit a location
      • Delete a location by its id
      • Config: functional allow_registration toggle
    • Blog CMS
    • Gallery CMS
  • Gallery integration
  • Blog integration
  • Improvements
    • Reset location boundaries from edit form
    • CSS variables for customizable themes
    • Docker setup
    • CD with automated tests

About

interactive map website with a built-in CMS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors