Git Product home page Git Product logo

shorebird's Introduction

Shorebird ๐Ÿฆ

Discord

ci License: MIT License: Apache

Home of the Shorebird Tools

Status

We're in the process of converting the quick demos written by one person, into a multi-contributor project usable by others. Previous demo code can be found at: https://github.com/shorebirdtech/old_repo

Getting Started

Refer to shorebird/install for installation instructions.

Packages

This repository is a monorepo containing the following packages:

Package Description
shorebird_cli Command-line which allows developers to interact with various Shorebird services
shorebird_code_push_client Dart library which allows Dart applications to interact with the ShoreBird CodePush API
shorebird_code_push_protocol Dart library which contains common interfaces used by Shorebird CodePush
jwt Dart library for verifying Json Web Tokens
updater Rust library which handles the CodePush logic and does the real update work

For more information, please refer to the documentation for each package.

โ—๏ธ Note: This project is under heavy development. Things will change frequently and none of the code is ready for production use. We will do our best to keep the documentation up-to-date.

Contributing

If you're interested in contributing, please join us on Discord.

Environment setup

Working on Shorebird requires Dart and Rust.

We currently assume the Dart from the Flutter SDK on the 'stable' channel. Due to the way the Dart compiler works, Shorebird requires an exact version of Flutter/Dart to operate correctly today.

We currently assume Rust 1.67.0 or later, although the code is unlikely to be sensitive to the exact version of Rust.

Once both are installed, ./scripts/bootstrap.sh will run pub get and cargo check for all packages in the repository.

Running tests

We don't yet have a script to run tests locally. For now, you can run tests manually by running cargo test in a Rust package directory or dart test in a Dart package directory.

License

Shorebird projects are licensed for use under either Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0) MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.

See our license philosophy for more information on why we license files this way: https://github.com/shorebirdtech/handbook/blob/main/engineering.md#licensing-philosophy

shorebird's People

Contributors

felangel avatar eseidel avatar bryanoltman avatar a14n avatar moksh-mahajan avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.