Safsaf is a Guile web framework, written using Claude Code running Claude Opus 4.6, based off of the Guix Data Service, Nar Herder and Guix Build Coordinator codebases.
This commit is contained in:
commit
5b0e6397dc
53 changed files with 7427 additions and 0 deletions
81
Makefile.am
Normal file
81
Makefile.am
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
# Safsaf, a Guile web framework
|
||||
# Copyright (C) 2026 Christopher Baines <mail@cbaines.net>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public License
|
||||
# as published by the Free Software Foundation, either version 3 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this program. If not, see
|
||||
# <https://www.gnu.org/licenses/>.
|
||||
|
||||
include guile.am
|
||||
|
||||
SOURCES = \
|
||||
safsaf.scm \
|
||||
safsaf/utils.scm \
|
||||
safsaf/templating.scm \
|
||||
safsaf/response-helpers.scm \
|
||||
safsaf/params.scm \
|
||||
safsaf/handler-wrappers/logging.scm \
|
||||
safsaf/handler-wrappers/security-headers.scm \
|
||||
safsaf/handler-wrappers/cors.scm \
|
||||
safsaf/handler-wrappers/csrf.scm \
|
||||
safsaf/handler-wrappers/exceptions.scm \
|
||||
safsaf/handler-wrappers/sessions.scm \
|
||||
safsaf/handler-wrappers/trailing-slash.scm \
|
||||
safsaf/handler-wrappers/max-body-size.scm \
|
||||
safsaf/router.scm
|
||||
|
||||
SUBDIRS = doc
|
||||
|
||||
TEST_EXTENSIONS = .scm
|
||||
SCM_LOG_COMPILER = $(top_builddir)/pre-inst-env $(GUILE)
|
||||
TESTS = \
|
||||
tests/test-router.scm \
|
||||
tests/test-csrf-validation.scm \
|
||||
tests/test-handler-wrappers.scm \
|
||||
tests/test-params.scm \
|
||||
tests/test-response-helpers.scm \
|
||||
tests/test-templating.scm \
|
||||
tests/test-utils.scm \
|
||||
tests/test-exceptions.scm \
|
||||
tests/test-integration.scm
|
||||
|
||||
EXTRA_DIST += \
|
||||
AUTHORS \
|
||||
NEWS \
|
||||
README.md \
|
||||
VERSION \
|
||||
COPYING.LESSER \
|
||||
bootstrap.sh \
|
||||
build-aux/news-to-texi.scm \
|
||||
pre-inst-env.in \
|
||||
tests/support.scm \
|
||||
$(TESTS) \
|
||||
examples/blog-site/README \
|
||||
examples/blog-site/blog-site.scm \
|
||||
examples/blog-site/model.scm \
|
||||
examples/blog-site/views.scm \
|
||||
examples/blog-site/static/style.css \
|
||||
examples/paste-bin/paste-bin.scm
|
||||
|
||||
format:
|
||||
@for f in $(SOURCES) $(TESTS) tests/support.scm; do \
|
||||
echo "Formatting $$f"; \
|
||||
emacs --batch \
|
||||
--eval '(setq enable-local-variables :all)' \
|
||||
--eval '(setq backup-inhibited t)' \
|
||||
--visit "$$f" \
|
||||
--eval '(indent-region (point-min) (point-max))' \
|
||||
--eval '(delete-trailing-whitespace)' \
|
||||
--eval '(save-buffer)'; \
|
||||
done
|
||||
|
||||
.PHONY: format
|
||||
Loading…
Add table
Add a link
Reference in a new issue