Skip to main content

Welcome to DAT !

Accelerate the development of your C/C++ project.

Hit the star for support. New features will be added.

Generate your package:

dat_new

Use it:

dat_flow

DAT is setting up the following for you:

  • a standard repository structure
  • the Conan package flow
  • use any build tool you want
  • the starter package generated with dat new contains a basic Bazel build with GTest integrated
  • release the package in Artifactory
  • documentation with Mkdocs
  • through extensions, testing and running your package (check the extensions folder)

Create your own templates and generate your own packages using DAT.

Although a work in progress, DAT provides already the basics to start using it and benefit from increased development efficiency.

Write your own templates and use them:

dat new -n <package_name> -t <your_template_file> -d <destination>

Check https://github.com/demorgan104/dat-templates.git for samples.



Getting started

Install DAT in your python environment

Clone DAT:
    git clone https://github.com/demorgan104/dat
    
Make sure your Python version is 3.9.0

Create a python virtual environment:
    python -m venv ./venv

Activate the virtual environment
    Windows:
      venv/Scripts/activate
    Macos:
      source venv/bin/activate

Install DAT:
    python setup.py install

Test the setup:
    dat -h

Using DAT

Typical usage:

  • Generate a package:

    dat new -n dat_hello

  • Change the directory to your package:

    cd dat_hello

  • Build your package:

    This step requires the installation of Bazel: https://docs.bazel.build/versions/4.1.0/install.html

    dat build

  • Test the package:

    dat test

    This test is for both testing that the package can be used by other packages and executing the unit tests.

  • Check the documentation:

    dat document

  • Run the application (this works for desktop apps only of course):

    dat run

  • Releasing to artifactory:

    For this you need to setup an artifactory server. You can use the following repo for the demo: https://github.com/demorgan104/dat-infrastructure

    Clone this repo and navigate to artifactory directory. There you can run: docker-compose up

    DAT is for the moment configured to work with that and there is no portable configuration available. Feel free to open a pull request for that or modify the source code :)

    Then you can use: dat release



DAT Commands

NAME DESCRIPTION
dat new Create a new ready to use package
dat build Build a package
dat release Release a package
dat test Test your package
dat run Run your executable
dat document Check your documentation




DAT Repositories

NAME DESCRIPTION LINK
dat Dat main repository https://github.com/demorgan104/dat
dat-infrastructure Dat package infrastructure repo https://github.com/demorgan104/dat-infrastructure
dat-templates Templates for DAT https://github.com/demorgan104/dat-templates.git

Metadata

Release files for dat-build 1.2.6

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

Source distribution (sdist)

Source distribution for dat-build 1.2.6
File Size Uploaded
dat-build-1.2.6.tar.gz 25.9 kB Details

Release files / dat-build-1.2.6.tar.gz

Download URL dat-build-1.2.6.tar.gz
Size 25.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9f3571c40e4706c409d1393957b94cbbf846f9435d7587e6593936d42ce477a5
BLAKE2b-256 checksum
How to use checksums
5057f81ff42494a0eb24dc08a96abec1415397158195ab68fdf57ab166bd4b1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.9

Release history Release notifications | RSS feed

This release

1.2.6 This release

1 release file

1.2.5

1 release file

1.2.0

1 release file

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