πŸš€ Getting Started

Prerequisite

To work with Dana, you will need to have the following cli installed:

  • node β‰₯ 16
  • npm β‰₯ 8
  • git β‰₯ 2
  • aws

Dana is compatible with Linux, MacOs and Windows development environment. For Windows, follow the link here for the setup.

Configure AWS connection

To access to Dana sources, you will need to connect to a specific AWS CodeArtifact. Credentials information should have been shared with you when you requested access.

In your ~/.aws/config add the two following profiles :

[profile SSO_{YOUR-ACCOUNT-NAME}]
sso_start_url=https://d-99672d367e.awsapps.com/start
sso_region=eu-central-1
sso_account_id={YOUR_ACCOUNT_ID}
sso_role_name={YOUR_ROLE_TO_ASSUME}
region=eu-central-1
[profile {YOUR-ACCOUNT-NAME}]
role_arn=arn:aws:iam::{YOUR_ACCOUNT_ID}:role/SSO_SaaS_Contributors
source_profile=SSO_{YOUR-ACCOUNT-NAME}

Caution

You need to replace with appropriate values

  • {YOUR-ACCOUNT-NAME}
  • {YOUR_ROLE_TO_ASSUME}
  • {YOUR_ACCOUNT_ID}

You need to execute 2 commands, the first one to connect to AWS SSO via Azure (temporary key/secret), and the second one allows you to obtain a token to use CodeArtifact !

aws sso login --profile SSO_{YOUR-ACCOUNT-NAME}
aws codeartifact login --tool npm --repository {YOUR_REPOSITORY} --domain dana --domain-owner 733912940672 --region eu-central-1 --namespace dana --profile {YOUR-ACCOUNT-NAME}

Caution

You need to replace with appropriate values

  • {YOUR-ACCOUNT-NAME}
  • {YOUR_REPOSITORY}

Info

The SSO credentials and the CodeArtifact token are valid for 12 hours!

Install and Run

To start with an application:

npx create-dana-app my-app

then you can access the folder and start the server. Typically:

cd my-app
npm start

πŸŽ‰ Tadaaaa ! Your application should be accessible in the browser, just here.

Access Tutorial

Create a simple application

Overview

See how it works under the hood


Tooling

Linter

Whenever you want to push new code, you will have to validate and β€œflag programming errors, bugs, stylistic errors, and suspicious constructs” using a linter tool (in our case, ESLint)

You can try such command in your terminal:

npm run lint

Tests

NPM is a powerful package manager. It supports scripts properties within the package.json file.
These scripts allow you to run various commands for the current project.

Here is a typical command to run the test suite for current project:

npm run test

Code of conduct

In the interest of fostering an open and welcoming environment, the following CoC contains guidelines for how you should interact in the community. It lists unacceptable behaviors (plus how you can report them) and also the kind of positive behaviors the maintainers encourage.

Contribute

For sure, Wiztivi’ maintainers do welcome contributions. And to help contributors, the following file contains information about what contributions, the project’s maintainers are looking for and the process for submitting changes or getting involved.
Please refer to this contribute guide below on how to make sure your contributions get accepted: