Skip to main content

Scheduler system for notebooks

Project description

GitHub license Bump version Upload Python Package codecov PRs Welcome Maintainability Rating semantic-release Commitizen friendly PyPI

🎱 Naas in short

The Naas project and its hosted version naas.ai is open-source, it transforms Jupyter Notebooks in a safe production environment thanks to micro-services(like a scheduler) accessible in « low-code ».

The product is based on 3 elements: features, drivers and templates. The templates enable "data geeks" to kickstart projects in minutes, the low-code drivers act as connectors to facilitate access to tools, and complex libraries (database, API, ML algorithm...) while the low-code features (scheduling, asset sharing, notifications...) enable faster iteration and deployment of outputs to end users, in a headless manner.

Naas is forever free to use with 100 credits/month. Open your account PS: If you contribute to this library of open-source notebooks templates, you can X2 your monthly credits 🏆

Documentation

Gitbooks naas

Issue

If you found a bug or need a new feature, please open an Issue here.

Try Naas on Binder

You can try out some of Naas features using the My Binder service.

Click on a link below to try Naas, on a sandbox environment, without having to install anything. Test it in binder (WIP) Binder

Install Naas only

pip3 install naas

Install Naas with drivers

pip3 install 'naas[full]'


Run locally

Requirements

  • Docker
  • Make (Not needed on windows and not needed on Linux/MacOS if you prefer to use docker-compose directly).

⚡Run

Linux / MacOS
make

Then you can go on http://localhost:8888/lab?token=naas

Windows

You just need to double click on the file windows_start.bat, this will open a terminal, start naas and open your browser on http://localhost:8888/lab?token=naas.

🛑 Stop

Linux / MacOS
make stop

or if you want to delete the container as well you can run

make down
Windows

Double click on windows_stop.bat

📦 Build

You don't really have to run this, unless you changed something related to the Dockerfile.dev. The build process is done automatically when running naas (make or make run) if it never happened before.

Linux / MacOS
make build

🔧 Open a shell in the container (root)

Linux / MacOS
make sh

File structure for local development

When you land in your freshly started naas, on the left you should see a file structure like this:

.
├── awesome-notebooks
├── file_sharing
├── drivers
├── naas
└── Welcome_to_Naas.ipynb

When naas is starting, it will automatically mount ../drivers and ../awesome-notebooks in your home directory of your naas. This means that if these directories does not exists on your machine it will create them and git clone naas drivers in ../drivers and awesome-notebooks in ../awesome-notebooks.

naas folder corespond to . directory on your machine (where naas project is cloned).

file_sharing directory is a folder created next to ./naas to allow easy file sharing between your computer and naas container. Every file that you will drop in this directory, either from naas or from your computer will be accesible on both naas and your machine.

Welcome_to_Naas.ipynb is our welcoming notebook to get you a place to start your journey.

Api documentation

We have a WIP documentation in swagger.

http://127.0.0.1:5000/swagger/

Live reload

If you do change in naas code, the server will live reload.

If you use naas in a notebook restart the kernel to get the changes.

Naas Manager

Open Naas manager outsite of jupyter context :

http://localhost:5000/naas

Run test

Open Jupyterlab click on + to open Launcher Open Shell Go the right directory cd naas Run it in the shell pytest -x to test your code

Each Change you do from your IDE or from jupyter in the Naas folder is live reloaded If you test naas feature inside a notebook reload your kernel between changes. Same for the manager page you have to reload the Page to see the changes. To go faster you can use isolated Manager to reload only manager and not full jupyterlab

Check lint

python -m black naas format better python -m flake8 naas check if any left error

Publish

You can commit from jupyter or from your local IDE, code of Naas is sync between docker machine and your computer

this auto publish by github action on main branch

Supporters:

Sentry Gitbooks

Authors:

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

naas-2.1.8.tar.gz (234.3 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page