DevCase wurde für Entwickler und IT -Profis entwickelt. Es ist ein Tool, mit dem Sie schnell und einfach Ihr eigenes Blog und Ihr eigenes Portfolio online erhalten können.
Demo/Beispiel: rburkhardt.com
Heim

Um

Blogpost mit Bild (neue Version hat ein Kommentarsystem)

Blogpost ohne Bild (neue Version hat ein Kommentarsystem)

Kontaktseite (neue Version hat Captchas)

Admin -Dashboard

Admin - über config

Der schnellste und einfachste Weg, um Dev-Case lokal zu testen:
git clone [email protected]:rob32/dev-case.git
cd dev-case
docker-compose up -d --build
docker-compose exec web python manage.py migrate
docker-compose exec web python manage.py createsuperuser
Wichtig :
Erstellen Sie eine neue .EnV -Datei mit dem folgenden Inhalt (bevor docker-compose up -d --build ):
DEBUG=True
DATABASE_URL=psql://postgres:postgres@db:5432/postgres
Gehen Sie zu http://127.0.0.1:8000/ und überprüfen Sie, ob alle funktioniert haben.
Entwicklungsumgebung mit Python (Venv) und Knoten (optional).
Getestet mit GNU/Linux & Mac:
git clone [email protected]:rob32/dev-case.git
cd dev-case
python3 -m venv venv && source venv/bin/activate
pip install -r requirements-dev.txt
python3 manage.py migrate
pre-commit install
Erstellen Sie eine .env -Datei mit mindestens den folgenden Inhalt:
DEBUG=True
# only if postgres is used, uncomend the next line (example):
# DATABASE_URL=psql://postgres:postgres@db:5432/postgres
Starten Sie den Entwicklungsserver mit python3 manage.py runserver
Gehen Sie zu http://127.0.0.1:8000/
# Install dependecies with:
npm install
# Build "Fronted" manually (uses `rm -rf` for cleaning):
npm run build
Optional: Starten Sie Backend-Server und ESBuild im Watch-Mode gleichzeitig mit npm start .
# Unit/Integration Tests:
python3 manage.py test
# Code Quality with the help of pre-commit
pre-commit run -a -v
Eine Auswahl möglicher Einstellungen über Umgebungsvariablen:
SECRET_KEY=insecure-secretkey12345
DEBUG=FALSE
ALLOWED_HOSTS=my-domain-name.com
DATABASE_URL=psql://postgres:postgres@db:5432/postgres
ADMIN_LOCATION=dev-case/
ROBOTS_DISALLOW=/contact/,/private-file.html`
FEED_TITLE="My Feed Title"
FEED_DESCRIPTION="My feed description"
USE_UMAMI_ANALYTICS=True
UMAMI_SCRIPT_URL=https://your-umami-app.com/umami.js
UMAMI_DATA_WEBSITE_ID=2323-3232-2323-3232
Wip
Für den Einsatz/die Produktion gibt es derzeit zwei Zweige:
Für die App -Plattform von Digitalocean können Sie unten die Button "Deploy to Digitalocean" verwenden. Bitte stellen Sie sicher, dass Sie über einen funktionierenden S3 -Raum/Eimer mit den erforderlichen Anmeldeinformationen verfügen. Handbuch: So erstellen Sie einen digitaloceanischen Raum und einen API -Schlüssel
Nach Abschluss des Bauvorgangs:
Greifen Sie über die Registerkarte Konsole auf die Konsole Ihrer App zu und führen Sie die folgenden Befehle aus:
python3 manage.py migrate für die anfänglichen Datenbankmigrationenpython3 manage.py createsuperuserNehmen Sie als letzter Schritt die folgende Einstellung in Ihrer Raumeinstellung vor:
Ihr Speicherplatz -> Einstellungen -> CORS -Konfigurationen (Hinzufügen):
*ondigitalocean.app*example.comDies sollte das Problem mit den Schriftarten lösen (fehlender Header, Zugangskontroll-Owl-Origin)
Mögliche Einstellungen für die Produktion (über Umgebungsvariablen):
SECURE_SSL_REDIRECT=True
SECURE_HSTS_SECONDS=2592000
SECURE_HSTS_INCLUDE_SUBDOMAINS=True
SECURE_HSTS_PRELOAD=True
SESSION_COOKIE_SECURE=True
CSRF_COOKIE_SECURE=True
Stellen Sie sicher, dass USE_S3_STORAGE auf True eingestellt ist.
Mögliche Einstellungen für den kompatiblen Speicher S3 (über Umgebungsvariablen):
USE_S3_STORAGE (default=False)
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_STORAGE_BUCKET_NAME
AWS_S3_REGION_NAME
AWS_S3_ENDPOINT_URL
AWS_S3_CUSTOM_DOMAIN
AWS_LOCATION
AWS_IS_GZIPPED (default=False)
AWS_S3_FILE_OVERWRITE (default=True)
AWS_DEFAULT_ACL (default=public-read)
Sie können den Speicherort für den Administratorbereich mithilfe der Variablen ADMIN_LOCATION ändern. Standard ist admin/ .
Ändern Sie den Domänennamen und den Anzeigenamen über Admin-Panel (Sites App) in Ihren tatsächlichen Domänennamen. Standard ist auf "example.com" festgelegt.
Verwenden Sie die Umgebungsvariable ROBOTS_DISALLOW , um nicht zulässige Regeln zu verhindern. Für einen gültigen Sitemap -Eintrag ändern Sie Ihren Domänennamen, wie in Sitemap.xml beschrieben.
Beispiel: ROBOTS_DISALLOW=/contact/,/private-file.html
Um Benachrichtigungen zu erhalten, können Sie die folgenden Einstellungen über Umgebungsvariablen konfigurieren:
USE_EMAIL_SMTP (default=False)
EMAIL_NOTIFICATION (default=False)
EMAIL_RECIPIENT (receiver address)
EMAIL_HOST
EMAIL_HOST_USER
EMAIL_HOST_PASSWORD
EMAIL_USE_TLS (default=True)
EMAIL_USE_SSL (default=False)
EMAIL_PORT (default=587)
DEFAULT_FROM_EMAIL
Stellen Sie sicher, dass USE_EMAIL_SMTP und EMAIL_NOTIFICATION auf True festgelegt sind.
Die Variable DEFAULT_FROM_EMAIL muss einen gültigen Wert haben (Beispiel: [email protected]).
Dadurch werden Sie benachrichtigt, wenn neue Kommentare vorhanden sind oder wenn Sie eine Nachricht über die Kontaktseite erhalten.
Wenn Sie im Falle von Serverfehlern auch benachrichtigt werden möchten, legen Sie die Umgebungsvariable DJANGO_ADMINS mit Ihrem Namen und Ihrer E -Mail -Adresse fest. Beispiel:
DJANGO_ADMINS=YourName:[email protected]
# or more
DJANGO_ADMINS=NameOne:[email protected],NameTwo:[email protected]
Stellen Sie sicher, dass die Umgebungsvariable USE_UMAMI_ANALYTICS auf True eingestellt ist.
Erstellen Sie zusätzlich eine UMAMI_SCRIPT_URL und UMAMI_DATA_WEBSITE_ID -Umgebungsvariable mit den entsprechenden Werten.
Beispiel:
USE_UMAMI_ANALYTICS=True
UMAMI_SCRIPT_URL=https://your-umami-app.com/umami.js
UMAMI_DATA_WEBSITE_ID=2323-3232-2323-3232
Stellen Sie sicher, dass die Umgebungsvariable der Umgebung USE_PLAUSIBLE_ANALYTICS auf True eingestellt ist.
Erstellen Sie zusätzlich eine variable PLAUSIBLE_SCRIPT_URL und PLAUSIBLE_DATA_DOMAIN mit den entsprechenden Werten.
Beispiel:
USE_PLAUSIBLE_ANALYTICS=True
PLAUSIBLE_SCRIPT_URL=https://plausible.io/js/script.js
PLAUSIBLE_DATA_DOMAIN=example.com
Beiträge, Feedback und Feature-Requests sind immer willkommen. Weitere Informationen finden Sie im Leitfaden für Mitwirkenden
Ein großer Dank an die folgenden großartigen Projekte:
Das Projekt ist unter GNU GPLV3 -Lizenz verfügbar.
Wenn Sie das Projekt mögen, geben Sie ihm bitte einen Stern