|
1 | 1 | # Uranus |
2 | 2 |
|
3 | | -**Digitally Mapping and Sharing the Event Landscape** |
| 3 | +**Uranus** is a flexible, open-source event management platform designed to organize, schedule, and promote cultural activities. It empowers non-profits and grassroots organizations to manage events, venues, and organizers in a structured way, providing accessible, high-quality data via a robust API. |
4 | 4 |
|
5 | | -> 🚧 Disclaimer: This repository and the associated database are currently in **beta**. Some parts of the code and data may still contain errors. Please [open an issue](#) or contact us via email if you encounter any problems. |
| 5 | +# Key Features |
6 | 6 |
|
7 | | ---- |
| 7 | +- **Structured Event Data** – Organize events, venues, and spaces with detailed metadata, including accessibility info and geospatial data for precise location mapping and spatial queries. |
| 8 | +- **Flexible API** – Access and integrate event data via standardized HTTP endpoints. |
| 9 | +- **Support for Nonprofits** – Tailored for smaller cultural and civic organizations that need digital infrastructure. |
| 10 | +- **Inclusive Values** – Supports diversity, minority representation, gender equality, and sustainability. |
| 11 | +- **Open Source** – Reuse, modify, and redistribute freely under a permissive license. |
8 | 12 |
|
9 | | -## Introduction |
10 | 13 |
|
11 | | -**Uranus** aims to create a detailed and flexible representation of the event landscape, making it easier to create, maintain, publish, and share high-quality event data. |
| 14 | +# Building Blocks |
12 | 15 |
|
13 | | -The database models: |
14 | | -- **Venues**: Physical locations of events |
15 | | -- **Spaces**: Descriptions of rooms or sub-locations within venues |
16 | | -- **Organizations**: Represented hierarchically (e.g., Institution → Association → Working Group) |
17 | | -- **Events**: Including flexible, multi-date scheduling via `EventDate` |
| 16 | +- **Uranus API Server** – Go-based backend for fast and scalable data access. |
| 17 | +- **PostgreSQL + PostGIS** – Database with spatial support for accurate venue and event mapping. |
| 18 | +- **Pluto Image Server** – Integrated image handling for events, venues, spaces and organizations. |
18 | 19 |
|
19 | | -The data is accessible through an **open API** for use in: |
20 | | -- Plugins (e.g., WordPress) |
21 | | -- Website integrations |
22 | | -- Custom applications |
23 | 20 |
|
24 | | -Unlike other systems that focus solely on single events, Uranus emphasizes the **relationships** between locations, dates, and organizations — enabling advanced search and visualizations (e.g., maps and portals). |
| 21 | +# Getting Started |
25 | 22 |
|
26 | | ---- |
| 23 | +1. Clone the repository for the Vue3 frontend: |
| 24 | + ```bash |
| 25 | + git clone git@github.com:sndcds/uranus-dashboard.git |
| 26 | + ``` |
27 | 27 |
|
28 | | -## Target Audiences |
| 28 | +2. Clone the repository for the Go backend: |
| 29 | + ```bash |
| 30 | + git clone clone git@github.com:sndcds/uranus.git |
| 31 | + ``` |
29 | 32 |
|
30 | | -- **Event Organizations**: Associations, initiatives, educational and cultural institutions, etc. |
31 | | -- **Event Enthusiasts**: Users searching for events based on: |
32 | | - - Date |
33 | | - - Audience |
34 | | - - Type/genre |
35 | | - - Location |
36 | | - - Organizations |
37 | | - - Accessibility |
38 | | -- **Portals & Institutions**: Municipalities, cultural associations, or media platforms that want to integrate event data |
39 | | -- **Journalists & Culture Reporters**: Looking for structured event information |
| 33 | +3. Follow setup instructions in the documentation to run the API server and database. |
40 | 34 |
|
41 | | ---- |
42 | 35 |
|
43 | | -## Project Status |
44 | 36 |
|
45 | | -This project was initiated by **OK Lab Flensburg** on **March 2, 2025**. |
| 37 | +# Contributing |
46 | 38 |
|
47 | | -We are currently building the **first MVP** (Minimal Viable Product) to demonstrate the core concept of Uranus. The MVP will include: |
48 | | -- Event creation & management |
49 | | -- API access |
| 39 | +We welcome contributions, feedback, and feature requests! You can: |
50 | 40 |
|
51 | | -More features will be added in the coming months. |
| 41 | +- Report bugs |
| 42 | +- Suggest new features |
| 43 | +- Fork and extend the code for your own needs |
52 | 44 |
|
53 | | ---- |
54 | | - |
55 | | -## Get Involved |
56 | | - |
57 | | -We welcome feedback and contributions. |
58 | | -Feel free to: |
59 | | -- Create issues for bugs or feature ideas |
60 | | -- Submit pull requests |
61 | | -- Contact us directly via email |
62 | | - |
63 | | ---- |
64 | | - |
65 | | -## Installation |
66 | | - |
67 | | ---- |
68 | | - |
69 | | -### Prerequisites |
70 | | - |
71 | | -1. **Database Setup** |
72 | | - |
73 | | -- Ensure PostgreSQL with PostGIS extension is installed and running on `localhost` (default port: `5432`). |
74 | | -- Create a database named `uranus`, owned by a user with the same name. |
75 | | -- Make sure the database accepts connections from `localhost`. |
76 | | - |
77 | | -2. **Environment Variables** |
78 | | - |
79 | | - |
80 | | ---- |
81 | | - |
82 | | -## Configuration |
83 | | - |
84 | | -```json |
85 | | -{ |
86 | | - "verbose": true, |
87 | | - "dev_mode": true, |
88 | | - "port": 9090, |
89 | | - "base_api_url": "http://localhost:9090", |
90 | | - "use_router_middleware": true, |
91 | | - "db_host": "localhost", |
92 | | - "db_port": 5432, |
93 | | - "db_user": "roaldchristesen", |
94 | | - "db_password": "", |
95 | | - "db_name": "oklab", |
96 | | - "db_schema": "uranus", |
97 | | - "ssl_mode": "disabled", |
98 | | - "allow_origins": ["http://localhost:8009", "https://uranus.grain.one"], |
99 | | - "pluto_verbose": true, |
100 | | - "pluto_image_dir": "/Users/roaldchristesen/Documents/Developer/Projects/pluto/image", |
101 | | - "pluto_cache_dir": "/Users/roaldchristesen/Documents/Developer/Projects/pluto/cache", |
102 | | - "jwt_secret": "82jhdksl#", |
103 | | - "auth_token_expiration_time": 3600 |
104 | | -} |
105 | | -``` |
106 | | - |
107 | | - |
108 | | ---- |
109 | | - |
110 | | -## Export Database |
111 | | - |
112 | | -```sh |
113 | | -pg_dump -U oklab -h localhost -d oklab -n app --data-only --column-inserts --no-owner --no-comments --verbose -f uranus_data_dump.sql_utils |
114 | | -pg_dump -U oklab -h localhost -d oklab -n app --schema-only --no-owner --no-comments --verbose -f uranus_schema_dump.sql_utils |
115 | | -``` |
| 45 | +Join the community and help us build a better platform for cultural and civic event management. |
0 commit comments