Code Monkey home page Code Monkey logo

ggby-mobile's Introduction

Developer Documentation

The SlackFest app is built on ReactNative with the Expo framework to make it simpler to build and ship iOS and Android apps from one codebase with code push capabilities :)

https://docs.expo.io/versions/v33.0.0/

Running Locally

There are several options for local execution: android / ios emulators and binary execution on device OR running a local expo server to run the app within the expo app. Check the expo documentation for instructions.

Package Management

We use yarn instead of npm for package management and the local run time. Simply replace npm with yarn in any commands you see in expo or react native documentation.


Content Management

Adding a new info pdf

See src/features/info/InfoContainer.js

The app requires a base64 encoded string of the pdf for display by rn-pdf-reader.

#ON MacOS: encodes the pdf to base64 and copies it to your clipboard. Just paste it here.
openssl base64 < path/to/file.pdf | tr -d '\n' | pbcopy

Adding a new schedule

use the node command yarn getData which is defined in scheduleToJson.js.

  1. Update the spreadsheet id and sheet name in the scheduleToJson.js if importing a new schedule
    1. E.g. for BernMovesFlash, the spreadsheet id is highlighted: https://docs.google.com/spreadsheets/d/1QBtACEflInYn8_Pt61KvaweCMBzpK8PWr-clYW9Y8VE/edit#gid=1253545848
  2. Follow the spreadsheet convention from BernMovesFlash, or update the schedule to json to match sheet columns to the appropriate json field.
  3. Run yarn getData
  4. Authorize scheduleToJson to access google sheets on your behalf.
  5. Let the script handle the rest.

Adding a new map

Add the png image to the assets folder. This is critical because it ensures the image is uploaded to the EXPO CDN for codepush style updating and bundling in the app for app store publication.

For now: Update the map dimensions and file name in code

ggby-mobile's People

Contributors

dschlitt avatar vlexaargas avatar yepster1 avatar gumgl avatar renovate-bot avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

yepster1

ggby-mobile's Issues

Build error on Windows

[01:57:44] 500 - "{\"originModulePath\":\"C:\\\\repos\\\\ggby-mobile\\\\src\\\\features\\\\schedule\\\\EventDetailsView.style.js\",\"targetModuleName\":\"theme/variables\",\"message\":\"Unable to resolve module `theme/variables` from `C:\\\\repos\\\\ggby-mobile\\\\src\\\\features\\\\schedule\\\\EventDetailsView.style.js`: Module `theme/variables` does not exist in the Haste module map

This might be related to https://github.com/facebook/react-native/issues/4968
To resolve try the following:
  1. Clear watchman watches: `watchman watch-del-all`.
  2. Delete the `node_modules` folder: `rm -rf node_modules && npm install`.
  3. Reset Metro Bundler cache: `rm -rf /tmp/metro-bundler-cache-*` or `npm start -- --reset-cache`.  4. Remove haste cache: `rm -rf /tmp/haste-map-react-native-packager-*`.\",\"errors\":[{\"description\":\"Unable to resolve module `theme/variables` from `C:\\\\repos\\\\ggby-mobile\\\\src\\\\features\\\\schedule\\\\EventDetailsView.style.js`: Module `theme/variables` does not exist in the Haste module map

This might be related to https://github.com/facebook/react-native/issues/4968
To resolve try the following:
  1. Clear watchman watches: `watchman watch-del-all`.
  2. Delete the `node_modules` folder: `rm -rf node_modules && npm install`.
  3. Reset Metro Bundler cache: `rm -rf /tmp/metro-bundler-cache-*` or `npm start -- --reset-cache`.  4. Remove haste cache: `rm -rf /tmp/haste-map-react-native-packager-*`.\"}],\"name\":\"Error\",\"stack\":\"Error: Unable to resolve module `theme/variables` from `C:\\\\repos\\\\ggby-mobile\\\\src\\\\features\\\\schedule\\\\EventDetailsView.style.js`: Module `theme/variables` does not exist in the Haste module map

This might be related to https://github.com/facebook/react-native/issues/4968
To resolve try the following:
  1. Clear watchman watches: `watchman watch-del-all`.
  2. Delete the `node_modules` folder: `rm -rf node_modules && npm install`.
  3. Reset Metro Bundler cache: `rm -rf /tmp/metro-bundler-cache-*` or `npm start -- --reset-cache`.  4. Remove haste cache: `rm -rf /tmp/haste-map-react-native-packager-*`.
    at ModuleResolver.resolveDependency (C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\node-haste\\\\DependencyGraph\\\\ModuleResolution.js:161:1460)
    at ResolutionRequest.resolveDependency (C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\node-haste\\\\DependencyGraph\\\\ResolutionRequest.js:91:16)
    at DependencyGraph.resolveDependency (C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\node-haste\\\\DependencyGraph.js:272:4579)
    at dependencies.map.relativePath (C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\DeltaBundler\\\\traverseDependencies.js:376:19)
    at Array.map (<anonymous>)
    at resolveDependencies (C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\DeltaBundler\\\\traverseDependencies.js:374:16)
    at C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\DeltaBundler\\\\traverseDependencies.js:212:33
    at Generator.next (<anonymous>)
    at step (C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\DeltaBundler\\\\traverseDependencies.js:297:313)
    at C:\\\\repos\\\\ggby-mobile\\\\node_modules\\\\metro\\\\src\\\\DeltaBundler\\\\traverseDependencies.js:297:473\"}"

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Warning

These dependencies are deprecated:

Datasource Name Replacement PR?
npm babel-eslint Available
npm react-navigation Unavailable
npm react-navigation-material-bottom-tabs Unavailable

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • Update dependency eslint-plugin-jsx-a11y to v6.10.0
  • Update dependency eslint-plugin-react to v7.36.1
  • Update dependency prettier to v1.19.1
  • Update dependency react-native-vector-icons to v6.7.0
  • Update dependency redux-observable to v1.2.0
  • Update dependency rn-pdf-reader-js to v0.3.2
  • Update dependency rxjs to v6.6.7
  • Update dependency babel-eslint to v10
  • Update dependency babel-plugin-module-resolver to v5
  • Update dependency eslint to v9
  • Update dependency eslint-config-airbnb to v19
  • Update dependency eslint-config-prettier to v9
  • Update dependency eslint-import-resolver-babel-module to v5
  • Update dependency eslint-plugin-prettier to v5
  • Update dependency prettier to v3
  • Update dependency react-native-paper to v5
  • Update dependency react-native-vector-icons to v10
  • Update dependency react-navigation to v5
  • Update dependency react-navigation-material-bottom-tabs to v2
  • Update dependency react-redux to v9
  • Update dependency redux to v5
  • Update dependency redux-actions to v3
  • Update dependency redux-observable to v2
  • Update dependency redux-persist to v6
  • Update dependency rxjs to v7
  • Update dependency whatwg-fetch to v3
  • Update expo monorepo to v51 (major) (expo, jest-expo)
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Edited/Blocked

These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

npm
package.json
  • expo ^33.0.0
  • googleapis ^34.0.0
  • moment ^2.22.2
  • ramda 0.26.1
  • react 16.8.3
  • react-native-image-pan-zoom ^2.1.11
  • react-native-paper ^2.1.3
  • react-native-simple-markdown ^1.1.0
  • react-native-vector-icons ^6.0.2
  • react-navigation ^2.17.0
  • react-navigation-material-bottom-tabs ^0.4.0
  • react-redux 5.0.7
  • redux 4.0.0
  • redux-actions 2.4.0
  • redux-observable ^1.0.0
  • redux-persist ^5.10.0
  • rn-pdf-reader-js v0.2.2
  • rxjs ^6.3.3
  • whatwg-fetch ^2.0.4
  • babel-eslint ^9.0.0
  • babel-plugin-module-resolver ^3.1.1
  • eslint ^5.6.1
  • eslint-config-airbnb ^17.1.0
  • eslint-config-prettier ^3.1.0
  • eslint-import-resolver-babel-module ^4.0.0
  • eslint-plugin-import ^2.14.0
  • eslint-plugin-jsx-a11y ^6.1.1
  • eslint-plugin-prettier ^2.7.0
  • eslint-plugin-react ^7.11.1
  • jest-expo ~27.0.0
  • prettier ^1.14.3
  • react-test-renderer 16.3.1

  • Check this box to trigger a request for Renovate to run again on this repository

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.