9 Commits
Author SHA1 Message Date
retoor 03ef49523d chore: add snek-container-compose.yml to gitignore to exclude compose file 2025-06-08 01:59:50 +00:00
retoor 67b7dc4cab feat: add user settings profile with form, model, mapper, and templates 2025-04-03 06:35:25 +00:00
retoor 92b6291dc4 feat: add drive service with upload endpoint, mappers, models, and frontend upload integration 2025-02-04 22:38:13 +00:00
retoor 5907e8a3f8 chore: add cache directory to gitignore and remove png exclusion pattern 2025-01-29 15:42:12 +00:00
retoor 70e19f8a9f fix: enforce 30-record limit on all find queries and add trailing newlines to channel_message service 2025-01-28 14:28:43 +00:00
retoor d92e9276ae fix: add snek.d* to gitignore and set default sqlite db path in app init 2025-01-27 00:06:13 +00:00
retoor 8612c7e0c8 chore: add user service layer, markdown support, and rename model classes
- Introduce UserService with create_user method and password hashing
- Add UserMapper and BaseMapper for database operations
- Create service, mapper, and model registry modules with cached factories
- Rename User model class to UserModel for consistency
- Make email field optional in both RegisterForm and UserModel
- Integrate MarkdownExtension into Jinja2 environment
- Add AboutHTMLView and AboutMDView routes with .html and .md endpoints
- Append jinja-markdown2 and mistune to project dependencies
- Implement markdown rendering in html-frame.js for .md file responses
- Create markdown-frame.js custom element for standalone markdown display
- Add style.css with dark theme and orange heading colors
- Update Dockerfile to Python 3.12.8-alpine3.21 and fix CMD syntax
- Extend .gitignore with .resources, .backup*, and docs directories
- Refactor form.py with MIT license header and code documentation
- Add license and documentation headers to system/http.py
- Fix mobile form layout with full-width and full-height constraints
2025-01-24 13:00:10 +00:00
retoor 1ac7ef8b0d feat: add Dockerfile, compose.yml, gunicorn config, http utilities, and static assets
Add Dockerfile with wkhtmltopdf multi-stage build and gunicorn entrypoint for production deployment. Introduce compose.yml with volume sync for development. Switch Makefile from snek.serve to gunicorn with aiohttp worker. Extend Application class with CORS middleware, static file serving, login/test/http-get/http-photo routes, and template rendering. Create gunicorn.py entrypoint, http.py module with async URL fetching, screenshot generation via imgkit, link repair, and CRC32-based caching. Add middleware.py with CORS handlers. Include static assets: app.js with Message/Room/App classes, html_frame.css/js custom element, and prachtig-gitter_like.html UI template. Update setup.cfg dependencies with beautifulsoup4, gunicorn, imgkit, wkhtmltopdf. Add *.png to .gitignore.
2025-01-18 12:21:38 +00:00
retoor d0d9e679e1 feat: add initial project structure with snek chat server and registration form
Set up the Python project skeleton including pyproject.toml, setup.cfg, Makefile, .gitignore, and README. Implement the core snek application with aiohttp-based web server, model validation framework, and a registration form with username, email, and password fields.
2025-01-17 22:06:17 +00:00