No description
Find a file
Constantine Molchanov a85322a5e0
Merge pull request #214 from moigagoo/bugfix/fix_apidocs_links_213
Docs: Pool: Fix apidocs links.
2025-10-08 19:50:27 +04:00
.github/workflows Fix job names. 2025-02-14 12:00:29 +03:00
benchmark Fix benchmark task and formatting. 2023-04-05 19:15:19 +03:00
book Docs: Pool: Fix apidocs links. 2025-10-08 23:34:11 +08:00
src Match pool size arg type to the field type. 2025-03-19 12:23:55 +03:00
tests Fix tpool test. 2025-03-19 12:32:06 +03:00
.gitignore Add nbook binary to .gitignore. 2023-03-02 14:41:54 +03:00
changelog.md Update changelog. 2025-03-19 14:52:04 +03:00
compose.yml Run SQLite and Postgres tests in independent environments, fix getDb declaration. 2025-02-13 13:42:00 +04:00
Dockerfile Run SQLite and Postgres tests in independent environments, fix getDb declaration. 2025-02-13 13:42:00 +04:00
LICENSE Remove redundant execute permissions. 2023-03-02 14:41:30 +03:00
nbook.nim update 2023-09-08 16:49:08 +02:00
nimib.toml Update docs command. 2022-08-03 17:14:33 +04:00
norm.nimble Remove copy CNAME command. 2025-10-01 13:38:58 +04:00
README.md Remove CNAME. 2025-10-01 13:34:03 +04:00

Welcome to Norm!

Norm is an object-driven, framework-agnostic ORM for Nim that supports SQLite and PostgreSQL.

  • Documentation (built with nimibook)
  • API index
  • norman: scaffolder and migration manager for Norm
  • shopapp: a proof-of-concept for a webapp created with Karax for frontend, Jester for API server, Norm for ORM, and Norman for migration management

Installation

Install Norm with Nimble:

$ nimble install -y norm

Add Norm to your .nimble file:

requires "norm"

Norm requires Nimble 0.14.0 sonmake sure you have the latest Nimble installed by running:

$ nimble install -y nimble

Contributing

Any contributions are welcome: pull requests, code reviews, documentation improvements, bug reports, and feature requests.

  • See the issues on GitHub.

  • Run the tests before and after you change the code.

    The recommended way to run the tests is via nimble commands:

    $ nimble startContainers                                # Starts docker containers needed for testing
    $ nimble startContainers sudo                           # Starts docker containers using sudo
    
    $ nimble allTests                                       # run all test suites
    $ nimble singleTest tests/common/tmodel.nim             # run a single/list of test suite/s
    
    $ nimble stopContainers                                 # Stops and shuts down docker-containers
    $ nimble startContainers sudo                           # Stops docker container using sudo
    
  • Use camelCase instead of snake_case.

  • New procs must have a documentation comment. If you modify an existing proc, update the comment.

  • Apart from the code that implements a feature or fixes a bug, PRs are required to ship necessary tests and a changelog updates.

❤ Contributors ❤

Norm would not be where it is today without the efforts of these fine folks: https://github.com/moigagoo/norm/graphs/contributors.