• Stars
    star
    746
  • Rank 60,823 (Top 2 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created about 4 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

๐Ÿงฑ Mobile-first stack navigator framework with composable plugin system

Introduction

Karrotframe is rebranded with "Stackflow". View full documentation and demo on https://stackflow.so

Stackflow is a project that implements Stack Navigation UX, which is mainly used in mobile devices (iOS/Android, etc.) in a JavaScript environment. So, it can help to easily develop hybrid apps and webviews.

  • Stack screens and keep scrolling state.
  • It supports transition effects that stack up the screen and the transition effect that disappears when you go back.
  • Supports iOS-style swipe back.
  • It passes the necessary parameters to the screen to be switched.

So, what advantages does Stackflow have compared to the existing navigation library?

  • You can only use the state for stacks and transitions separately without UI. You can tear off the UI and use it as you like.
  • You can inject any additional extensions you want between lifecycles through the plugin interface.
  • Since the core logic and integration layers are separated, it can be integrated with various front-end frameworks. (Now only supports React)
  • Because render logic and UI can be injected from the outside, mobile webview and desktop development can be done in one codebase.
  • Server-Side Rendering is supported. (ReactDOMServer.renderToString)

Getting Started

$ yarn add @stackflow/core @stackflow/react
import ReactDOM from 'react-dom'

import { stackflow } from '@stackflow/react';

const { Stack, useFlow } = stackflow({
  // ...
});

const App: React.FC = () => {
  return (
    <Stack />
  );
};

ReactDOM.render(<App />, ...)

Integration Examples

To integrate Stackflow with a specific framework with routing capabilities, the framework requires an extension to manually call the preload API. However, Next.js does not officially support the preload API.

Contributors

To contribute new features or options to Stackflow, please check Contribution Guide

License

MIT

More Repositories

1

websites

Daangn on the WWW
TypeScript
650
star
2

seed-design

The Seed Design System
TypeScript
458
star
3

digital-garden

๋‹น๊ทผ๋งˆ์ผ“ ๊ณต๊ฐœ ์ง€์‹ ์ €์žฅ์†Œ
345
star
4

autopprof

Automatically profile the Go applications when CPU or memory utilization crosses threshold
Go
190
star
5

KarrotListKit

Swift
122
star
6

KarrotFlex

Declarative iOS UI sugar framework built on FlexLayout
Swift
112
star
7

codepocket

๋‹ค์–‘ํ•œ ์ฝ”๋“œ๋ฅผ ๋ชจ์œผ๊ณ  ํ•จ๊ป˜ ๊ธฐ์—ฌํ•ด์„œ ์ค‘๋ณต ๋…ธ๋ ฅ์ด ์—†๋Š” ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ๋งŒ๋“ค์–ด์š”
TypeScript
95
star
8

SushiBelt

view visible tracker for ios
Swift
76
star
9

kinesumer

A Go client implementing a client-side distributed consumer group client for Amazon Kinesis
Go
73
star
10

icona

icon integration platform (figma to github)
TypeScript
60
star
11

urlpack

Pure JavaScript toolkit for data URLs (MessagePack, Base58 and Base62)
TypeScript
59
star
12

cjk-slug

URL-friendly string converter that supports CJK characters
TypeScript
56
star
13

minimemcached

Pure Go memcached server for Go unittests motivated by miniredis
Go
51
star
14

betterkoreankotlin

์ฝ”ํ‹€๋ฆฐ ํ•œ๊ธ€ ์กฐ์‚ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ˆ์š” (์€๋Š”์ด๊ฐ€)
Kotlin
50
star
15

advent-of-code-2021

์ƒˆ๋กœ์šด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ํ•จ๊ป˜ ๊ฒจ์šธ๋‚˜๊ธฐ
OCaml
49
star
16

plantae

Plantae is a Request & Response API based middleware generator compatible with the various http clients (Fetch, Ky, Axios)
TypeScript
45
star
17

seed-icon

Figma๋ฅผ ์ง„์‹ค์˜ ์›์ฒœ์œผ๋กœ ํ•˜๋Š” ์•„์ด์ฝ˜ ๊ด€๋ฆฌ์†Œ
Vue
43
star
18

juso-edge

Reliable edge proxy to the Juso API
TypeScript
41
star
19

metabridge

๐Ÿ”— Defines the communication layer between mobile native(iOS/Android) and webview using JSON Schema and automatically generates SDK code. (TypeScript, Swift, Kotlin)
TypeScript
41
star
20

permalink

๋‹น๊ทผ๋งˆ์ผ“ ์›น ์ปจํ…์ธ  ํผ๋จธ๋งํฌ ์ŠคํŽ™ & ๋ ˆํผ๋Ÿฐ์Šค ๊ตฌํ˜„ ์ €์žฅ์†Œ
Rust
34
star
21

dynamoutil

Useful commands for DynamoDB.
Go
32
star
22

karrot-ui-icon

JavaScript
30
star
23

registry-edge

WIP: Docker Registry API on Cloudflare Workers
Rust
29
star
24

gorean

korean analyzer utility tools
Go
28
star
25

betterkorean

์•ˆ๋“œ๋กœ์ด๋“œ(android) ํ•œ๊ธ€ ์กฐ์‚ฌ ์ฒ˜๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ž…๋‹ˆ๋‹ค.
Java
26
star
26

simple-reveal

A simple scroll animation library in React
TypeScript
24
star
27

accesslog

access logger for golang
Go
20
star
28

littlefinger

Android app for SMS to Parse
Java
20
star
29

grpc-modern

Makes grpc clients fit in modern JavaScript(TypeScript) environment.
TypeScript
16
star
30

eboolkiq

Simple async job management service using gRPC
Go
16
star
31

mbti.daangn.com

๋‹น๊ทผ๋งˆ์ผ“ MBTI ์†Œ์Šค์ฝ”๋“œ
TypeScript
14
star
32

normalize-cjk

Normalize CJK characters in text
TypeScript
13
star
33

kakao_push

์นด์นด์˜ค ํ”Œ๋žซํผ API์—์„œ ์ œ๊ณตํ•˜๋Š” ํ‘ธ์‹œ์•Œ๋ฆผ์„ ํ˜ธ์ถœํ•˜๋Š” ์ ฌ์ž…๋‹ˆ๋‹ค
Ruby
13
star
34

swift-style-guide

๋‹น๊ทผ๋งˆ์ผ“ Swift ์Šคํƒ€์ผ ๊ฐ€์ด๋“œ
9
star
35

relay-kr

JavaScript
9
star
36

stackflow-example-nextjs

Next.js + Stackflow Proof of Concept
TypeScript
8
star
37

kdt

A deadly-simple, yet powerful language and framework to improve design tokens workflow.
8
star
38

karrot-ios-tech-talk

Karrot ios tech talk
7
star
39

go-estestfixtures

Ruby on Rails like test fixtures for Go. Write tests against a real elasticsearch,ES
Go
7
star
40

lint-config

๋‹น๊ทผ๋งˆ์ผ“์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์—ฌ๋Ÿฌ linter์˜ ๊ณต์šฉ config๋ฅผ ์ €์žฅํ•˜๋Š” ์ €์žฅ์†Œ์—์š”.
7
star
41

relay-next

TypeScript
6
star
42

genequal

Generate Equal() methods from AST
Go
6
star
43

N42WebView

In-app browser based WKWebView
Swift
5
star
44

daangn-team-page

Website of ๋‹น๊ทผ๋งˆ์ผ“ํŒ€
JavaScript
4
star
45

.github

4
star
46

search-ko-dic

Korean search dic
4
star
47

fission-editor

Fissile editor for outlining document
TypeScript
4
star
48

clouddown

A leveldown API implementation on top of Cloudflare Workers KV
TypeScript
4
star
49

webhook-cargo

Accumulate frequent outgoing webhook events to single using Cloudflare Workers Triggers
TypeScript
4
star
50

lifecycle

go application lifecycle manager
Go
4
star
51

greenhouse-js

JavaScript toolkit for Greenhouse API
TypeScript
4
star
52

stackflow-example-gatsby

Gatsby + Stackflow Proof of Concept
TypeScript
3
star
53

seed-design-token-builds

seed-design ๋””์ž์ธ ํ† ํฐ์˜ ์ •์  ๋นŒ๋“œ๋ฅผ ์Œ“์•„๋‘๋Š” ๊ณณ์ด์—์š”.
3
star
54

mongoose-dataloader

Use DataLoader with Mongoose
TypeScript
3
star
55

council

CMS and compliance control for service terms and privacy
TypeScript
3
star
56

eslint-plugin

ESLint plugin preconfigured with Karrot JS/TS developers preferences
2
star
57

npm-daangn-cli

JavaScript
2
star
58

karrot-conversion-tracker-tool-support

๋‹น๊ทผ๋งˆ์ผ“ ์ „ํ™˜ ์ถ”์  ์ง€์› ์ฑ„๋„์ž…๋‹ˆ๋‹ค
2
star
59

oauth-oidc-practice

"์“ฐ๋ฉด์„œ ๋ฐฐ์šฐ๋Š” OAuth 2.0 & OpenID Connect" ์ž๋ฃŒ ์ €์žฅ์†Œ
TypeScript
2
star
60

elasticsearch-utils

Ruby
1
star
61

dawgjs

dawg implemented in typescript
TypeScript
1
star
62

note-com-js

JavaScript SDKs for Note.com's API
TypeScript
1
star
63

create-karrotmini

JavaScript
1
star
64

grpc-processer

ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐ๋ชฌ์ฒ˜๋Ÿผ ํ•ญ์ƒ ๋„์›Œ์„œ ์„œ๋ฒ„๋กœ ์‚ฌ์šฉํ•˜๊ธฐ
Python
1
star
65

KoinSample

koin library๋ฅผ ํ™œ์šฉํ•œ DI ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.
Kotlin
1
star
66

KarrotAttributes

1
star
67

gatsby-plugin-vercel-deploy

Deploy your Gatsby site to Vercel
TypeScript
1
star
68

icon-pilot

์•„์ด์ฝ˜ ์ด๋ฆ„์„ ์ง€์–ด์ฃผ๋Š” ๋„๊ตฌ
HTML
1
star
69

yarn-plugins

Yarn Berry plugins used by Karrot
TypeScript
1
star