No funded issue found.
Check out the Issue Explorer
Be the OSS Funding you wish to see in the world.
Looking to fund some work? You can submit a new Funded Issue here .
Time left
Opened
Issue Type
Workers Auto Approve
Project Type
Time Commitment
Experience Level
Permissions
Accepted
Reserved For
Alpha seed implementation (New Feature)
spacemeshos
cosmic, spacemeshos, universal, react-native, electron, node.js, typescript, iOS, Android
## Intro
We are looking for a savvy and experienced front-end Typescript developer to tackle this funded issue.
Please only apply if you believe you can provide a high-quality delivery that satisfies all the requirements outlined in this issue. Feel free to ask any questions about this issue in the conversation module on https://github.com/spacemeshos/cosmic/issues/2 - thanks for your contribution!
## Story
App developers who need to ship their apps across all major platforms will use this seed as the base of their app's codebase because it will save them lots of time and effort writing boilerplate code to support these platforms with one codebase without having any duplicated app logic and UI code.
## Requirements
- Implement the seed using the architecture and frameworks described in the readme.
- Please review the readme.md for an architectural overview of the different app components and modules and design the folder and project structure so it corresponds to the conceptual architecture modules
- The seed should be buildable and runnable on all platforms - iOS, Android, Web and Desktop via Electron.
- Please review the relevant projects in the wiki. For example - this is a working barebones seed for [react-native-web typescript](https://github.com/ethanneff/react-native-web-typescript)
- We are expecting clean, well documented and polished Typescript code.
## Demo App
- Running the seed should launch a simple demo app
- Demo App should have 2 screens with content
- `Use case 1 - Basic navigation` - Clicking a button on the first screen should access the second screen. Clicking the button on the second screen should display the first screen
- `User case 2 - User Interaction` - The first screen should also include a text input box accepting user provided text and a submit button . Submitting the text should display it in a label below the text box. All this functionality should be implemented using Redux for state modifications and UI updates based on state changes
## Testing
- Use [Jest testing suite](https://jestjs.io/)
- There should be unit tests and integration tests for all implemented functionality
- There must be a test that validates proper demo app startup on each supported platform. e.g display of first content screen without any errors
## Documentation & Coding Style
- All methods, models, types and interfaces *must be* documented via short and simple text comments
- Write basic docs in readme.md that include instructions for setting up the dev env, building, testing and running the seed on all targets
- Integrate `tslint` into the build workflow
- All Typescript code must pass [tslint](https://palantir.github.io/tslint/)
## Guidelines
- Use [create-react-app-typescript](https://github.com/wmonk/create-react-app-typescript) and `Eject` the build scripts so they can be tweaked by hand and we can modify `babel`, etc...
- Each module's files should be in a module specific folder and the overall folder structure should be well organized
- Only use .js files when absolutely required a used framework - Typescript everywhere else
- Please use `yarn` and not `npm`
- PRs for this issue will be code reviewed and will only be accepted if all of the requirements outlined here are satisfied
- Use `flexbox` layout for all react-native views and ui widgets
## Developer Requirements
- You must be an experienced Typescript and node.js developer with some experience with one or more of these frameworks: `react`, `redux`, `react-native`, `react-native-web`, `react router`.
## Issue checklist
- [x] All required functionality implemented
- [ ] Demo app running on iOS device
- [ ] Demo app running on Android device
- [ ] Demo app running in web browser
- [ ] Demo app running in an Electron app
- [ ] Demo app navigation and use case works on all platforms
- [ ] Build, test and run docs in readme.md
- [ ] Well organized project folder structure that corresponds to the architecture
- [ ] All methods, types, interfaces and modules are well comment documented
- [ ] Typescript is used when possible instead of Javascript
- [ ] Yarn build, test and run scripts work for all platforms
- [ ] Full unit tests
- [ ] Demo app tests for each supported platform
- [ ] All Views and UI widgets are layed-out using flexbox.
- [ ] Your name added to authors
Setup your profile
Tell us a little about you:
Skills
No results found for [[search]] .
Type to search skills..
Bio Required
[[totalcharacter]] / 240
Are you currently looking for work?
[[ option.string ]]
Next
Setup your profile
Our tools are based on the principles of earn (π°), learn (π), and meet (π¬).
Select the ones you are interested in. You can change it later in your settings.
I'm also an organization manager looking for a great community.
Back
Next
Save
Enable your organization profile
Gitcoin products can help grow community around your brand. Create your tribe, events, and incentivize your community with bounties. Announce new and upcoming events using townsquare. Find top-quality hackers and fund them to work with you on a grant.
These are the organizations you own. If you don't see your organization here please be sure that information is public on your GitHub profile. Gitcoin will sync this information for you.
Select the products you are interested in:
Out of the box you will receive Tribes Lite for your organization. Please provide us with a contact email:
Email
Back
Save