Skip to content

Racket templates

The Racket Templates project provides the raco new tool and a collection of templates so you can quickly get started with a new project.

This is a command line tool! Please remember to configure your command line for Racket. We haven't created support for creating new projects from templates using DrRacket, Vim, or [Racket Mode(https://racket-mode.com) for Emacs, but we would like to do so.

The new command is inspired by the dotnet new <TEMPLATE> command, but provides the new template capability for the Racket ecosystem.

We currently support templates hosted on GitHub or Gitlab, but we are happy to add others if you prefer to host your template on another service.

installing the new command

Using existing templates is easy. Just install the package new:

raco pkg install new

Select a template

You can view all available templates in this repository in the templates directory, or you can search them in your command line by doing

raco new --list

to see all available templates.

You can also see list of [racket-templates 'public-templates']((https://github.com/search?q=org%3Aracket-templates+topic%3Apublic-template&type=repositories) on GitHub.

Install a template and get started

Then you can download any template you want by running

raco new <template-name> <optional-folder-location>

Contribute

The Racket community welcomes all sorts of contributors. And there are many ways to contribute

Ask questions

Asking questions is welcome - no question is too simple - asking 'so-called' obvious questions help us identify gaps in the documentation and usability of the tools and templates.

Answering questions

Yes please! Answering questions on Discourse and Discord on in issues is most welcome.

Report a bug

Just like asking a question! Create an issue in racket-templates/new, the template repository where you identified the bug. If are not sure how to do this or which is the right place, it is fine to let us know via the Racket Discourse or Discord.

Fix a bug

You are awesome and we love you. Seriously. If you know how to create a pull request that is great, but if you are not sure it is fine to let us know via the Racket Discourse or Discord.

Submitting a new template

You've created a new template you want to share with the Racket Community? Please submit a pull request to add a short configuration file describing your template and where to find it to the racket-templates folder in repository racket-templates. (I think we need to rename that repository as that name is a little confusing)

Your pull request should contain a single file with the name of your template, with the following contents:

(name <name of template>
 repo username/repo-name
 from [github|gitlab]
 desc "A short description of your template.")

A good example is Rosette:

(name rosette
 repo "racket-templates/rosette-template"
 from github
 desc "A #lang rosette template for program verification and synthesis.")

Pinned Loading

  1. cli-command cli-command Public template

    cli-command template

    Racket 15 1

  2. rosette-template rosette-template Public template

    A #lang rosette template for program verification and synthesis

    Racket 7

  3. lang lang Public template

    Forked from samth/xlang

    *lang* is a language of combinators and numeric constants - reproduced with permission from xlang by @samth

    Racket 4

  4. gui-app gui-app Public template

    gui-app is a modernised version of the GUI app described in ‘Programming Languages as Operating Systems’ (1999) by M. Flatt, R. Findler, S. Krishnamurthi and M. Felleisen

    Racket 3

Repositories

Showing 10 of 12 repositories
  • .github Public

    Racket Templates GitHub profile repo

    racket-templates/.github’s past year of commit activity
    0 MIT 0 0 0 Updated Sep 18, 2024
  • cli-command Public template

    cli-command template

    racket-templates/cli-command’s past year of commit activity
    Racket 15 MIT 1 2 0 Updated Sep 18, 2024
  • racket-templates Public

    The Racket-templates archive for finding, uploading, and cloning templates.

    racket-templates/racket-templates’s past year of commit activity
    2 MIT 1 1 0 Updated Sep 18, 2024
  • new Public

    Racket templates

    racket-templates/new’s past year of commit activity
    Racket 0 MIT 1 0 0 Updated Sep 17, 2024
  • module-reader-lang Public template
    racket-templates/module-reader-lang’s past year of commit activity
    Racket 0 Apache-2.0 0 0 0 Updated Jul 10, 2022
  • template Public template

    A template for creating a new template

    racket-templates/template’s past year of commit activity
    Racket 0 MIT 0 0 0 Updated Nov 20, 2021
  • rosette-template Public template

    A #lang rosette template for program verification and synthesis

    racket-templates/rosette-template’s past year of commit activity
    Racket 7 0 1 0 Updated Dec 13, 2020
  • ppict-slideshow-template Public template Forked from bennn/ppict-slideshow-template

    Example slideshow using ppict

    racket-templates/ppict-slideshow-template’s past year of commit activity
    Scheme 0 1 0 0 Updated Oct 27, 2020
  • package Public template Forked from jackfirth/racket-package-template

    A template for creating a Racket package

    racket-templates/package’s past year of commit activity
    Racket 2 Apache-2.0 2 0 0 Updated Sep 30, 2020
  • lang Public template Forked from samth/xlang

    *lang* is a language of combinators and numeric constants - reproduced with permission from xlang by @samth

    racket-templates/lang’s past year of commit activity
    Racket 4 1 0 0 Updated Sep 28, 2020

Top languages

Racket Scheme

Most used topics

Loading…