Devcase fue diseñado para desarrolladores y profesionales de TI. Es una herramienta para ayudarlo a obtener su propio blog y cartera en línea de manera rápida y fácil.
Demo/Ejemplo: rburkhardt.com
Hogar

Acerca de

Blog Post con imagen (nueva versión tiene el sistema de comentarios)

BlogPost sin imagen (la nueva versión tiene el sistema de comentarios)

Página de contacto (la nueva versión tiene captchas)

Tablero de administración

Admin - Acerca de la configuración

La forma más rápida y fácil de probar el caso de dev-cass localmente :
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
Importante :
Cree un nuevo archivo .env con el siguiente contenido (antes de docker-compose up -d --build ):
DEBUG=True
DATABASE_URL=psql://postgres:postgres@db:5432/postgres
Vaya a http://127.0.0.1:8000/ y verifique si todo funcionó.
Entorno de desarrollo con Python (VENV) y nodo (opcional).
Probado con GNU/Linux y 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
Cree un archivo .env con al menos el siguiente contenido:
DEBUG=True
# only if postgres is used, uncomend the next line (example):
# DATABASE_URL=psql://postgres:postgres@db:5432/postgres
Inicie el servidor de desarrollo con python3 manage.py runserver
Vaya a http://127.0.0.1:8000/
# Install dependecies with:
npm install
# Build "Fronted" manually (uses `rm -rf` for cleaning):
npm run build
Opcional: Inicie el servidor de backend y ESBuild en modo de reloj al mismo tiempo con npm start .
# Unit/Integration Tests:
python3 manage.py test
# Code Quality with the help of pre-commit
pre-commit run -a -v
Una selección de configuraciones posibles a través de variables de entorno:
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
Ceñudo
Para el despliegue/producción hay dos ramas en este momento:
Para la plataforma de aplicaciones de DigitalOcean, puede usar el botón "Implementar en DigitalOcean" a continuación. Asegúrese de tener un espacio/cubo S3 que funcione con las credenciales requeridas. Guía: Cómo crear un espacio de DigitalOcean y una llave de API
Después de que se completa el proceso de compilación:
Acceda a la consola de su aplicación a través de la pestaña de la consola y ejecute los siguientes comandos:
python3 manage.py migrate para las migraciones iniciales de la base de datospython3 manage.py createsuperuser para crear un usuario administrativoComo último paso, realice el siguiente ajuste en su configuración de espacio:
Su espacio -> Configuración -> Configuraciones Cors (Agregar):
*ondigitalocean.app*example.comEsto debería resolver el problema con las fuentes (encabezado faltante, access-control-aligina)
Posible configuración para la producción (a través de variables de entorno):
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
Asegúrese de que USE_S3_STORAGE esté configurado en True .
Configuración posible para el almacenamiento compatible con S3 (a través de variables de entorno):
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)
Puede cambiar la ubicación del área de administración utilizando la variable de entorno ADMIN_LOCATION . El valor predeterminado es admin/ .
Cambie el nombre de dominio y el nombre de visualización a través de Admin-panel (aplicación Sites) a su nombre de dominio real. El valor predeterminado se establece en "Ejemplo.com".
Para agregar reglas de no permitir , use la variable de entorno ROBOTS_DISALLOW . Para una entrada de mapa del sitio válido, cambie su nombre de dominio como se describe en Sitemap.xml.
Ejemplo: ROBOTS_DISALLOW=/contact/,/private-file.html
Para recibir notificaciones, puede configurar las siguientes configuraciones a través de variables de entorno:
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
Asegúrese de que USE_EMAIL_SMTP y EMAIL_NOTIFICATION se establezca en True .
La variable DEFAULT_FROM_EMAIL debe tener un valor válido (ejemplo: [email protected]).
Esto le notificará cuando haya nuevos comentarios o cuando reciba un mensaje a través de la página de contacto.
Si también desea ser notificado en caso de errores del servidor, configure la variable de entorno DJANGO_ADMINS con su nombre y dirección de correo electrónico. Ejemplo:
DJANGO_ADMINS=YourName:[email protected]
# or more
DJANGO_ADMINS=NameOne:[email protected],NameTwo:[email protected]
Asegúrese de que la variable de entorno USE_UMAMI_ANALYTICS esté configurada en True .
Además, cree una variable de entorno UMAMI_SCRIPT_URL y UMAMI_DATA_WEBSITE_ID con los valores correspondientes.
Ejemplo:
USE_UMAMI_ANALYTICS=True
UMAMI_SCRIPT_URL=https://your-umami-app.com/umami.js
UMAMI_DATA_WEBSITE_ID=2323-3232-2323-3232
Asegúrese de que la variable de entorno USE_PLAUSIBLE_ANALYTICS esté configurada en True .
Además, cree una variable de entorno PLAUSIBLE_SCRIPT_URL y PLAUSIBLE_DATA_DOMAIN con los valores correspondientes.
Ejemplo:
USE_PLAUSIBLE_ANALYTICS=True
PLAUSIBLE_SCRIPT_URL=https://plausible.io/js/script.js
PLAUSIBLE_DATA_DOMAIN=example.com
Las contribuciones, los comentarios y las solicitudes de características siempre son bienvenidas. Para obtener más información, consulte la guía de contribuyentes
Muchas gracias a los siguientes grandes proyectos:
El proyecto está disponible bajo la licencia GNU GPLV3.
Si te gusta el proyecto, por favor dale una estrella