Closed aleeusgr closed 6 months ago
Here is an example of a lein new
command that creates a new Luminus project with functionality close to what is described:
lein new luminus myproject +postgres +cljs +reagent +auth +routes +db +test
Let me break down the options used:
luminus
: The template name, which creates a Luminus project.myproject
: The project name, which will be used as the namespace and directory name.+postgres
: Adds PostgreSQL support to the project.+cljs
: Enables ClojureScript support for the project.+reagent
: Includes Reagent, a popular ClojureScript library for building UI components.+auth
: Adds authentication and authorization features to the project.+routes
: Generates routes for the API and web application.+db
: Includes database support, which will be PostgreSQL in this case.+test
: Enables testing support for the project.This command will create a new Luminus project with the specified features and functionality. You can customize the project further by modifying the project.clj
file and adding or removing dependencies as needed.
Note that you can customize the template options to fit your specific needs. For example, if you don't need authentication, you can remove the +auth
option. If you want to use a different database, you can replace +postgres
with +mysql
or another database option.
https://github.com/luminus-framework/luminus-template https://luminusweb.com/
lein new luminus hs-clojure --to-dir . --force -- +postgres +cljs +reagent
P.S. Пожалуйста, обрати внимание, что мы предлагаем реализовать тестовое задание без использования фреймворков (Luminus - это фреймворк :)
When choosing a template for your Clojure/ClojureScript app, consider the following criteria:
1. Project Type:
lein-new
,luminus
, orchestnut
that provide a basic web application structure.lein-new
orapi-template
that focuses on API development.cljs-template
orelectron-template
that targets desktop or mobile platforms.2. Framework and Libraries:
luminus
orreagent-template
that includes Reagent or React for UI components.lein-new
orring-template
that uses Ring or Compojure for API routing.luminus
ordb-template
that include database support (e.g., PostgreSQL).3. Complexity and Features:
lein-new
is a simple template, whileluminus
provides more features.luminus
orauth-template
that include authentication and authorization mechanisms.luminus
ori18n-template
that supports i18n and L10n.4. ClojureScript Support:
cljs-template
orreagent-template
that includes ClojureScript configuration.5. Community and Maintenance:
luminus
orlein-new
.6. Learning Curve:
lein-new
.7. Customizability:
luminus
orchestnut
.By considering these criteria, you can select a template that best fits your project's needs and helps you get started quickly.