98 lines
3.2 KiB
Markdown
98 lines
3.2 KiB
Markdown
# Devanturas by SimolZimol
|
||
|
||
Professional Minecraft Plugin development and Discord bot programming, now powered by a Flask web app.
|
||
|
||
## Features
|
||
- English website with sections: Home, Projects, Minecraft, About, Contact
|
||
- Projects overview plus individual project pages (detail pages with feature lists, commands, install steps)
|
||
- Dedicated Minecraft page with services and expertise
|
||
- External links for each project (GitHub, Modrinth, SpigotMC, Wiki, Issues)
|
||
- No links to private Gitea (as requested)
|
||
|
||
## Project Structure
|
||
```
|
||
website/
|
||
├─ app.py # Flask app and routes
|
||
├─ requirements.txt # Python dependencies
|
||
├─ templates/ # Jinja2 templates
|
||
│ ├─ base.html
|
||
│ ├─ index.html
|
||
│ ├─ projects.html
|
||
│ ├─ project_detail.html
|
||
│ ├─ minecraft.html
|
||
│ ├─ about.html
|
||
│ └─ contact.html
|
||
└─ static/
|
||
├─ css/
|
||
│ └─ styles.css
|
||
└─ js/
|
||
└─ script.js
|
||
```
|
||
|
||
## Quickstart (Windows PowerShell)
|
||
|
||
```pwsh
|
||
# 1) Navigate to the project directory
|
||
Set-Location -Path "c:\Users\Simon.Speedy\Documents\dev projekte\website"
|
||
|
||
# 2) Create and activate a virtual environment
|
||
python -m venv .venv
|
||
.\.venv\Scripts\Activate.ps1
|
||
|
||
# 3) Install dependencies
|
||
pip install -r requirements.txt
|
||
|
||
# 4) Run the development server
|
||
python app.py
|
||
# The site will be available at http://127.0.0.1:5000
|
||
```
|
||
|
||
If `python` isn’t found, try `py` instead of `python` in the above commands.
|
||
|
||
## Run with Docker (optional)
|
||
|
||
```pwsh
|
||
# From project root
|
||
docker build -t devanturas-site .
|
||
docker run --rm -p 5000:5000 devanturas-site
|
||
# Open http://localhost:5000
|
||
```
|
||
|
||
## Deploy on Coolify
|
||
|
||
You can deploy this app on Coolify using the existing Dockerfile:
|
||
|
||
1) Create a new Application in Coolify and choose "Dockerfile" as the build type.
|
||
|
||
2) Point it to your repository and path where this project lives.
|
||
|
||
3) Environment variables (set in Coolify UI):
|
||
- PORT: Coolify usually sets this automatically; the container binds to `0.0.0.0:$PORT`.
|
||
- FLASK_DEBUG=false (optional)
|
||
- WEB_CONCURRENCY=3 (optional Gunicorn workers override)
|
||
- DEMO=... (example passthrough, Dockerfile includes `ENV DEMO=$DEMO`)
|
||
|
||
4) Exposed port: 5000 (Dockerfile uses `EXPOSE 5000` and `CMD` binds to `$PORT` with a default of 5000.)
|
||
|
||
5) Health check: GET /health should return 200 with `{ "status": "ok" }`.
|
||
|
||
No other platform-specific files are required. Coolify will build the image from the Dockerfile and run it with the configured environment.
|
||
|
||
## Customization
|
||
- Add more projects by updating the data structures in `app.py` under `/projects` and the detail routes.
|
||
- To add Wiki/Issues links per project, populate the `links` dict with `wiki` and `issues` keys. If a project should not expose these, simply omit the keys and the template won’t render them.
|
||
- All styling lives in `static/css/styles.css`. JS behaviors live in `static/js/script.js`.
|
||
|
||
## Domain Notes
|
||
Ready to deploy to any of your domains:
|
||
- devanturas.de, devanturas.eu, devanturas.net
|
||
- simolzimol.de, simolzimol.eu
|
||
|
||
You can serve this Flask app via any WSGI-capable host (e.g., Gunicorn + reverse proxy) or a PaaS of your choice.
|
||
|
||
## Privacy
|
||
- No links to the private Gitea instance are included.
|
||
|
||
## License
|
||
Choose a license and add it here if you plan to publish the source.
|