https://github.com/vindarel/cl-cookieproject Skip to content Sign up * Product + Features + Mobile + Actions + Codespaces + Copilot + Packages + Security + Code review + Issues + Discussions + Integrations + GitHub Sponsors + Customer stories * Team * Enterprise * Explore + Explore GitHub + Learn and contribute + Topics + Collections + Trending + Skills + GitHub Sponsors + Open source guides + Connect with others + The ReadME Project + Events + Community forum + GitHub Education + GitHub Stars program * Marketplace * Pricing + Plans + Compare plans + Contact Sales + Education [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this user All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} vindarel / cl-cookieproject Public * * Notifications * Fork 2 * Star 36 Generate a ready-to-use Common Lisp project License BSD-3-Clause license 36 stars 2 forks Star Notifications * Code * Issues 3 * Pull requests 0 * Actions * Projects 0 * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Security * Insights vindarel/cl-cookieproject This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. master Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags 1 branch 0 tags Code * Clone HTTPS GitHub CLI [https://github.com/v] Use Git or checkout with SVN using the web URL. [gh repo clone vindar] Work fast with our official CLI. Learn more. * Open with GitHub Desktop * Download ZIP Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Launching Xcode If nothing happens, download Xcode and try again. Launching Visual Studio Code Your codespace will open once ready. There was a problem preparing your codespace, please try again. Latest commit @vindarel vindarel README: about running cookiecutter a second time ... 7f31ffe May 20, 2022 README: about running cookiecutter a second time 7f31ffe Git stats * 22 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time hooks post hook: git init but no checkout or add remote Jun 21, 2021 {{cookiecutter.repo_name}} .asd: add build-pathname to choose the binary name Apr 13, 2022 LICENSE fork https://github.com/hbristow/cookiecutter-cl May 25, 2021 README.md README: about running cookiecutter a second time May 20, 2022 cookiecutter.json ask for licence (MIT) Jun 21, 2021 View code cl-cookieproject Usage Cookiecutter options TODOs See also README.md cl-cookieproject A cookiecutter template for Common Lisp projects featuring: * Canonical Common Lisp project structure, a ready-to-use project with an entry point and unit tests. * Run project from sources * Build a binary * and choose your Lisp implementation * Test suite using Fiveam + a travis CI configuration file (untested) * Roswell recipe to build, install and share a binary * example use of command line arguments (uiop:command-line-arguments). Proper parsing is left to do with a third-party library (clingon, unix-opts, defmain, adopt...). We are also shaping out a template for a web project, see cl-cookieweb. NEW! See our demo video: https://www.youtube.com/watch?v= XFc513MJjos Usage Create a new project. You'll be prompted to provide some basic information about your new project, which will then be auto-generated in the current working directory: $ pip install cookiecutter $ cookiecutter https://github.com/vindarel/cl-cookieproject project_name [cookie-lisp-project]: repo_name [cookie-lisp-project]: description []: A test project version [0.0.1]: year [1984]: author [CL User]: me email [me@mail.com]: username [me]: Initialised empty Git repository in /home/vince/bacasable/lisp-projects/cookie-lisp-project/.git/ Run it straight away: $ cd cookie-lisp-project $ make run rlwrap sbcl --load run.lisp This is SBCL 2.0.10, an implementation of ANSI Common Lisp. More information about SBCL is available at . SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. To load "cffi": Load 1 ASDF system: cffi ; Loading "cffi" . To load "cookie-lisp-project": Load 1 ASDF system: cookie-lisp-project ; Loading "cookie-lisp-project" [package cookie-lisp-project] Hello from cookie-lisp-project! * You can see the Hello from the main function, and we are given a Lisp REPL. Build an executable: $ make build [...] [saving current Lisp image into /home/vince/bacasable/lisp-projects/cookie-lisp-project/cookie-lisp-project: writing 0 bytes from the read-only space at 0x50000000 writing 736 bytes from the static space at 0x50100000 writing 37060608 bytes from the dynamic space at 0x1000000000 writing 2154496 bytes from the immobile space at 0x50200000 writing 13910016 bytes from the immobile space at 0x52000000 done] $ ./cookie-lisp-project me Hello me from cookie-lisp-project! $ ./cookie-lisp-project -h Usage: cookie-lisp-project [name] Build it with Roswell: $ ros build roswell/cookie-lisp-project.ros A binary is created in the roswell directory. Your users can install the application with: $ ros install github_username/project_name Cookiecutter options You can use command line options: https://cookiecutter.readthedocs.io /en/1.7.2/advanced/cli_options.html * --no-input: do not prompt for parameters and only use cookiecutter.json file content * --replay: do not prompt for parameters and only use information entered previously * -f, --overwrite-if-exists: overwrite the contents of the output directory if it already exists * -s, --skip-if-file-exists: skip the files in the corresponding directories if they already exist * -o, --output-dir: where to output the generated project dir into * --config-file: user configuration file The first time you run cookiecutter with a link to a GitHub repository, the skeleton is saved under ~/.cookiecutters/. You can run the command for the second time with only the skeleton name: cookiecutter cl-cookieproject TODOs * [ ] initialize a git repository * [ ] better guess the author * [ ] include a documentation system * [*] web project skeleton * [ ] more CI setup * [ ] build a .deb (and .rpm) See also * https://github.com/fukamachi/cl-project + one-package per file style (called "modern" but I find it too cumbersome to use) + uses the Rove test system (and I think it is not ready, see this discussion and its own issues) + less integration (no recipe to build binaries, use CLI args or use Roswell). Pure CL, doesn't need Cookiecutter (Python). * https://github.com/triclops200/quickapp and quickapp-cli + last commit 2016 / 2015 o its internal-quit in app-utils.lisp should be uiop:quit + uses buildapp: kind of old and not needed now with asdf:make or Roswell? (proove me wrong) + includes an args parsing utility (it should probably use a more complete library though) * https://www.xach.com/lisp/quickproject/ + doesn't include a test definition + simple, nothing fancy. * https://github.com/40ants/cl-project-with-docs + uses Sphinx and reStructured text to render nice and readable HTML documentation. + automatic gh-pages + includes tests, CI (Travis), Roswell + needs Sphinx (Python) and cl-launch. + 2018: I suspect the author has now another favourite documentation generator (MGLPAX, 40ants/doc) and might not update much this skeleton. --------------------------------------------------------------------- Acknowledgement: we forked cookiecutter-cl. About Generate a ready-to-use Common Lisp project Resources Readme License BSD-3-Clause license Stars 36 stars Watchers 3 watching Forks 2 forks Releases No releases published Sponsor this project * * ko_fi ko-fi.com/vindarel Learn more about GitHub Sponsors Packages 0 No packages published Languages * Common Lisp 88.8% * Makefile 6.4% * Python 4.8% Footer (c) 2022 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.