Skip to main content

Modern MISP - API

Ruff Conventional Commits

Requirements

Getting Started

Clone the project and install Python version 3.11.0. It is recommended to install Python using pyenv. Then install all dependencies by typing make setup into your terminal and start your local database container using make up.

Create a file called .env and copy the contents of .env.example into it. Finally, start the development server using make dev.

You should now be able to access the api on localhost:4000.

To use the commandline tool run python .\src\mmisp\commandline_tool\main.py --h from the base directory to view all commands. For detailed information of all commands: python .\src\mmisp\commandline_tool\main.py --help. For setting up the DB use the commandline tool option for setup and then create your user account. In case you have not created a new organisation yet, please add your account to the setup basic organisation: ghost_org.

Run tests using make test (local database container required running) or make test/lite.

Setting up your IDE

Be sure to use the newly created virtual env as your interpreter (./venv/bin/python). Also install the Ruff extension for your IDE and set Ruff as your default code formatter. It is recommended to activate formatting your code on every save.

Best Practices

General Guidelines

The following are some guidelines for writing code, in no particular order:

  • Try to write clean code
  • Use the "early return" pattern, do you really need that else block?
  • Add correct types wherever possible, reduce Any occurrences as much as possible
  • Reduce database calls
  • Be consistent within your code, and within the rest of the codebase
  • Use whitespace generously, to group and separate lines of code
  • Be explicit, magic is great until it is not

Endpoint Ordering

Try to order endpoints using CRUD so that the following order is achieved:

  • Create a {resource}
  • Read / Get a {resource}
  • Update a {resource}
  • Delete a {resource}
  • Get all {resource}s
  • More niche endpoints
  • Deprecated endpoints

Metadata

Release files for mmisp-lib 0.14.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mmisp-lib 0.14.1
File Size Uploaded
mmisp_lib-0.14.1.tar.gz 131.0 kB Details

Release files / mmisp_lib-0.14.1.tar.gz

Download URL mmisp_lib-0.14.1.tar.gz
Size 131.0 kB
Tags Source
SHA-256 checksum
How to use checksums
639792902576da41011220f3ab7f52e742f99ffdcfd223ea83dcc57d4f7fc86d
BLAKE2b-256 checksum
How to use checksums
f0103ca0c5a1fa4a040f5c07b8b02b2779b683e3834b409a6890402d19ab55a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release history Release notifications | RSS feed

0.14.3

1 release file

0.14.2

1 release file

This release

0.14.1 This release

1 release file

0.14.0

1 release file

0.13.0

1 release file

0.12.0

1 release file

0.11.3

1 release file

0.11.2

1 release file

0.11.1

1 release file

0.11.0

1 release file

0.10.1

1 release file

0.10.0

1 release file

0.9.0

1 release file

0.8.4

1 release file

0.8.3

1 release file

0.8.2

1 release file

0.8.1

1 release file

0.8.0

1 release file

0.7.5

1 release file

0.7.4

1 release file

0.7.3

1 release file

0.7.2

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.4

1 release file

0.6.3

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.0

1 release file

0.4.0

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.11

1 release file

0.1.10

1 release file

0.1.9

1 release file

0.1.8

1 release file

0.1.7

1 release file

0.1.6

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page