Skip to content

Instantly share code, notes, and snippets.

Avatar
🌌

Nicolas Sturm sturmenta

🌌
View GitHub Profile
@sturmenta
sturmenta / firestore2json.js
Last active Apr 22, 2022
firestore to json & json to firestore
View firestore2json.js
const admin = require('firebase-admin');
const fs = require('fs');
const serviceAccount = require('../../../../../../Private/myschool-data_transfer-key.json');
admin.initializeApp({ credential: admin.credential.cert(serviceAccount) });
const schema = require('./schema').schema;
const firestore2json = (db, schema, current) => {
@sturmenta
sturmenta / comments.md
Last active Oct 1, 2021
Firebase Functions Send Mail
View comments.md
View javascript.json
{
"Console.log": {
"prefix": "clg",
"body": ["console.log(`$1`, $1)"],
"description": "console.log"
}
}
@sturmenta
sturmenta / DottedLine.js
Last active Aug 29, 2019
react native - android - dotted line
View DottedLine.js
import React from 'react';
import { View, Text, StyleSheet } from 'react-native';
const styles = StyleSheet.create({
container: {
width: '100%',
alignItems: 'center',
height: 1,
marginBottom: 10,
marginTop: 10,
@sturmenta
sturmenta / ObjectsArrayutils.ts
Last active Nov 9, 2020
remove object from array in javascript, add, and replace
View ObjectsArrayutils.ts
export const arrayRemoveObject = (array: Object[] = [], toRemove: Object): Array<Object> => {
const tempArray = array.slice();
if (JSON.stringify(tempArray).includes(JSON.stringify(toRemove))) {
return JSON.parse(
JSON.stringify(tempArray)
.replace(JSON.stringify(toRemove), '')
.split('},]')
.join('}]')
.split('",]')
@sturmenta
sturmenta / readme.md
Last active Apr 4, 2022
use "react-native-vector-icons" in "create-react-app" with "react-app-rewired"
View readme.md
  1. yarn add react-native-vector-icons react-native-web
  2. yarn add react-app-rewired -D
  3. update package.json scripts (before react-scripts start/build/test)
    "start": "react-app-rewired start",
    "build": "react-app-rewired build",
    "test": "react-app-rewired test --env=jsdom",
  1. create a new file named config-overrides.js add it to the root of the project
View formatBigNumber.js
const values = [
{ K: 1000 },
{ M: 1000000 },
{ B: 1000000000 },
{ Qd: 1000000000000 },
{ Qt: 1000000000000000 },
{ St: 1000000000000000000 },
{ Sp: 1000000000000000000000 },
{ O: 1000000000000000000000000 },
{ N: 1000000000000000000000000000 },
@sturmenta
sturmenta / dimensions.js
Last active Sep 9, 2019
JS Media Queries for Desktop, Tablet, Mobile.
View dimensions.js
const w = window.innerWidth;
export const isPhone = w >= 320 && w < 480;
export const isTablet = w >= 480 && w < 768;
export const isLargeTablet = w >= 768 && w < 1024;
export const isDesktop = w >= 1024 && w < 1280;
export const isLargeDesktop = w >= 1280;
@sturmenta
sturmenta / App.js
Last active Sep 11, 2019
react native KeyboardContext
View App.js
import React, { PureComponent } from 'react';
import { AppNavigator, setTopLevelNavigator } from './navigation';
import { KeyboardProvider } from './utils/keyboardContext';
export default class App extends PureComponent {
render() {
return (
<KeyboardProvider>
<AppNavigator ref={navigationRef => setTopLevelNavigator(navigationRef)} />
@sturmenta
sturmenta / dist2GPS.js
Last active Oct 4, 2019
Distance between two gps locations
View dist2GPS.js
const dist2GPS = (lat1, lng1, lat2, lng2) => {
lat1 = parseFloat(lat1);
lng1 = parseFloat(lng1);
lat2 = parseFloat(lat2);
lng2 = parseFloat(lng2);
const R = 6371e3;
const φ1 = lat1.toRad();
const φ2 = lat2.toRad();
const Δφ = (lat2 - lat1).toRad();