Skip to content
@youwol

YouWol

Your Web-based Open Laboratory for R&D

Youwol log

Welcome to the YouWol GitHub Group

About Us

YouWol is an online ecosystem designed for collaboration, library and application development, and sharing. It places a significant emphasis on the domains of science and engineering by offering essential tools to optimize performance.

For a broader overview of YouWol, please visit our WebSite.

At a more detailed level, YouWol transforms web browsers into a functional operating system by:

  • Enabling seamless and transparent installation of shared libraries and applications on-the-fly. This support extends to languages that can transpile or compile to JavaScript or WebAssembly. Additional information can be found in the WebPM site.
  • Providing an initial collection of applications and libraries that replicate the familiar user experience of a conventional operating system, including features like a desktop and file explorer.
  • Offering a development environment that streamlines and encourages contributions to the ecosystem. This environment is designed to make it easier for developers to participate in enhancing the platform.

Repositories

The most foundationnal libraries:

  • py-youwol: This library includes YouWol's backend functionalities, its primary focus revolves around data management, authentication, authorization, and resolving dependencies. It also serves as a standalone Python package and replicates all of YouWol's backends on your local PC.
  • k8s-deployments: This library gathers the essential configurations necessary for deploying YouWol within a Kubernetes cluster. It primarily addresses Kubernetes, Helm charts, Keycloak, ScyllaDB, Minio, Redis, and other related aspects.
  • webpm-client: A TypeScript library and HTTP client responsible for handling the dynamic installation of shared libraries directly into web browsers from the WebPM packages manager. It accomplishes this either in the main thread or within web workers.
  • http-clients: A collection of HTTP clients designed to interact with YouWol's backends.
  • cdn-externals: Packages available in NPM that have been ported to WebPM (the in-browser package manager of YouWol).
  • cdn-pyodide-loader: Extension of the cdn-client to load python packages using Pyodide

Additionally, we've developed several noteworthy applications, including:

  • desktop: An application that emulates a desktop-like user interface, running here.
  • file explorer: This is YouWol's file explorer, providing file management functionalities, running here.
  • low code: A low-code solution designed for orchestrating computations and visualizations directly within the web browser, running e.g. running here.
  • stories: A solution for creating interactive documents, relying on a drag-and-drop web-page builder based on grapesJS, running here.
  • python-playground: An in-browser Python Integrated Development Environment (IDE) for coding and experimentation, running here.

Contribution Guidelines

We welcome contributions from the community to help improve our projects. Please take a moment to review these guidelines before contributing.

How to Contribute

  • Fork the Repository: If you want to work on a project, fork the repository to your GitHub account.
  • Clone the Repository: Clone the forked repository to your local machine using git clone.
git clone https://github.com/your-username/your-fork.git
  • Create a Branch: Create a new branch for your contribution. Use a descriptive branch name related to the issue you're addressing or the feature you're adding.
git checkout -b feature-branch

Make Changes: Make your changes to the codebase. Please follow our coding style and guidelines.

  • Commit Changes: Commit your changes with a clear and concise commit message. Use the present tense and imperative mood (e.g., "Add feature" not "Added feature").
git commit -m "Add feature"
  • Push Changes: Push your changes to your fork on GitHub.
git push origin feature-branch
  • Create a Pull Request: Go to the original repository and create a pull request. Please provide a detailed description of your changes and reference any related issues.

  • Review and Discuss: Participate in the discussion on the pull request. Address any feedback and make additional changes if necessary.

  • Merge: Once your contribution is approved, it will be merged into the main repository.

Code of Conduct

We have a Code of Conduct that we expect all contributors to follow. Please review our Code of Conduct before contributing.

Reporting Issues

If you find a bug or have a suggestion for improvement, please open an issue on our issue tracker. Be sure to provide a clear and detailed description of the problem or enhancement you're suggesting.

Licensing

By contributing to our projects, you agree that your contributions will be licensed under the same license as the project. For more details, please see our License file.

Help and Support

If you have any questions or need assistance, feel free to contact us through email.

Team

Contact Us

Social Media

License

Pinned Loading

  1. py-youwol py-youwol Public

    Local YouWol full-stack environment

    Python 3 1

  2. flux-view flux-view Public archive

    A library to enable reactive programming to create HTML document

    TypeScript 2 1

  3. python-playground python-playground Public

    Light in-browser python IDE using pyodide

    TypeScript

Repositories

Showing 10 of 141 repositories
  • py-youwol Public

    Local YouWol full-stack environment

    youwol/py-youwol’s past year of commit activity
    Python 3 MIT 1 0 0 Updated Jul 23, 2024
  • local-youwol-client Public

    HTTP client for local YouWol

    youwol/local-youwol-client’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 23, 2024
  • mkdocs-ts Public

    Typescript based mkdocs like solution

    youwol/mkdocs-ts’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 23, 2024
  • co-lab Public

    The YouWol's collaborative laboratory application

    youwol/co-lab’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 18, 2024
  • vsf-notebook-plugin Public

    Visual Studio Flow plugin to assist with integration in @youwol/mkdocs-ts Notebooks.

    youwol/vsf-notebook-plugin’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 18, 2024
  • logging Public
    youwol/logging’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 18, 2024
  • vsf-canvas Public

    3D environment for workflows exploration

    youwol/vsf-canvas’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 18, 2024
  • pyrun_backend_project Public

    Python interpreter for Notebook in @youwol/mkdocs-ts

    youwol/pyrun_backend_project’s past year of commit activity
    Python 0 0 0 0 Updated Jul 17, 2024
  • vsf-three Public

    Visual Studio Flow toolbox wrapping the three.js library

    youwol/vsf-three’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 17, 2024
  • vsf-core Public

    Foundations of Visual Studio Flow

    youwol/vsf-core’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Jul 17, 2024

Top languages

Loading…

Most used topics

Loading…