RickNMortyCompose
tivi
RickNMortyCompose | tivi | |
---|---|---|
14 | 28 | |
25 | 6,402 | |
- | - | |
3.6 | 9.7 | |
over 2 years ago | 7 days ago | |
Kotlin | Kotlin | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
RickNMortyCompose
-
Facing the Monster: An Analgesic for Relayphobia
// /src/relay/environment.ts import { Store, RecordSource, Environment, Network, Observable, } from "relay-runtime"; import type { FetchFunction, IEnvironment } from "relay-runtime"; const fetchFn: FetchFunction = (params, variables) => { const response = fetch("https://rickandmortyapi.com/graphql/", { method: "POST", headers: [["Content-Type", "application/json"]], body: JSON.stringify({ query: params.text, variables, }), }); return Observable.from(response.then((data) => data.json())); }; export function createEnvironment(): IEnvironment { const network = Network.create(fetchFn); const store = new Store(new RecordSource()); return new Environment({ store, network }); }
-
GraphQL Code Generator with TypeScript, React and Apollo Client
import type { CodegenConfig } from '@graphql-codegen/cli'; const config: CodegenConfig = { overwrite: true, schema: "https://rickandmortyapi.com/graphql", documents: './**/*.graphql', generates: { "src/graphql/generated/graphql.ts": { plugins: ['typescript', 'typescript-operations', 'typescript-react-apollo'], }, config: { withHooks: true } } }; export default config;
-
How to Write a GraphQL Query
export const apolloClient = new ApolloClient({ uri: "https://rickandmortyapi.com/graphql", cache: new InMemoryCache({ typePolicies: { Query: { fields: { characters: { keyArgs: false, merge(existing: Characters, incoming: Characters) { return { ...incoming, results: [ ...(existing?.results || []), ...(incoming?.results || []), ], } satisfies Characters; }, }, }, }, }, }), });
-
Introducing Goctopus: open-source, state-of-the-art GraphQL endpoint discovery & fingerprinting tool.
goctopus -a rickandmortyapi.com _ __ _ ___ ___| |_ ___ _ __ _ _ ___ / _` |/ _ \ / __| __/ _ \| '_ \| | | / __| | (_| | (_) | (__| || (_) | |_) | |_| \__ \ \__, |\___/ \___|\__\___/| .__/ \__,_|___/ v0.0.14 |___/ |_| [INF] Enumerating subdomains for 'rickandmortyapi.com' [INF] Found 5 subdomains for 'rickandmortyapi.com' in 15 seconds 276 milliseconds INFO[0016] Done fingerprinting rickandmortyapi.com INFO[0016] Found: {"authenticated":false,"domain":"rickandmortyapi.com","schema_status":"OPEN","source":"rickandmortyapi.com","url":"https://rickandmortyapi.com/graphql"} INFO[0016] Done. Found 1 graphql endpoints
-
How to upskill my API Testing.
Checkout https://rickandmortyapi.com and their https://rickandmortyapi.com/graphql
-
A Comprehensive Guide to Writing Your First GraphQL Query
import { ApolloClient, InMemoryCache, ApolloProvider } from "@apollo/client"; Import PeopleData from './PeopleData' function App() { const client = new ApolloClient({ cache: new InMemoryCache(), uri: "https://rickandmortyapi.com/graphql", }); return (
-
Getting started with Postman for GraphQL
Back to business: fortunately, Postman has built-in full support for GraphQL! 🎉Let's take a quick tour of the capabilities by exploring the Rick and Morty API. To get started, create a new HTTP request in Postman. Set the request mode to POST and the URL to https://rickandmortyapi.com/graphql. Now; in the body section, select GraphQL. You should end up with something like this:
-
Making GraphQL Codegen Work For You: GraphQL Integration with React and TypeScript
import "@/styles/globals.css"; import type { AppProps } from "next/app"; import { ApolloClient, InMemoryCache, ApolloProvider } from "@apollo/client"; const client = new ApolloClient({ uri: "https://rickandmortyapi.com/graphql", cache: new InMemoryCache(), }); export default function App({ Component, pageProps }: AppProps) { return ( ApolloProvider> ); }
-
Learn GraphQL and Apollo Client With a Simple React Project
import React from 'react'; import ReactDOM from 'react-dom/client'; import './index.css'; import App from './App'; import { ApolloClient, ApolloProvider, InMemoryCache } from '@apollo/client' const client = new ApolloClient({ uri: "https://rickandmortyapi.com/graphql", cache: new InMemoryCache(), }) const root = ReactDOM.createRoot(document.getElementById('root')); root.render( );
-
When I export my next.js app as a static build, my dynamic routes fail. Is there a way to alter my code so they work in a static site?
I have a next.js app that uses dynamic routes. Here is the repo on Github https://github.com/ChristianOConnor/graphql-next-api-tester. Run the app by cloning the repo and cd-ing into the root directory, running npm install then npm run dev. It works perfectly. It's a next.js app that does graphql calls to https://rickandmortyapi.com/graphql, and renders them out into a table. You first click on the "List of characters" button in the middle of the home page: [![enter image description here][1]][1]
tivi
-
Do you have an open source (base) project using latest tech?
Look no more: https://github.com/chrisbanes/tivi
- What are some open source android projects that you can go to see Best practices or how they implemented stuff
-
What do you use for compose navigation?
It's definitely the most verbose part of our app and one of the weakest parts of the Jetpack library. We used https://github.com/chrisbanes/tivi for some inspiration on how to organize your navigation structures.
-
What's modern approach to handling Preferences (UI & Storage) in Compose?
I have considered a few variants around this route. One easy way out would be just to launch a ComponentActivity with a PreferenceFragment like what Chris Banes does in TiVi ... but if you go with PreferenceFragment(Compat) it seems you are kinda stuck with SharedPreferences. If one attempts to supply DataStore wrapped in PreferenceDataStore, it seems types get messed up (TextPreference will store as a String, even if the InputType is number, etc).
-
Modern ways to expose Retrofit network progress and errors to a ViewModel?
Thanks I think what's confusing is that UI events are recommended to be modeled as Flows, which I guess is why Tivi uses Flows for even the simplest actions, but it does a lot of very fancy things. Most repository interactions seem to have an entire class extending an Interactor (e.g.) which catches and emits errors, progress and handles timeouts and does all that crazy queuing stuff with UI "messages" Flow
-
"outdated senior" needs your advice
I would read and study nowinandroid and tivi apps.
-
Compose Navigation with multiple graphs
Check out the approach from tivi https://github.com/chrisbanes/tivi/blob/main/app/src/main/java/app/tivi/AppNavigation.kt as an idea.
- Any Clean Architecture app courses that make use of Flows completely without LiveData?
- What resources would you recommend for learning how to build Multi-Module android apps?
-
Anyone here who has bought Philipp Lackner's course for developing multi-module apps?
They probably want you to do a module split like in https://github.com/chrisbanes/tivi or https://github.com/igorwojda/android-showcase, but what they probably don't realize is that modularization is a trade-off, namely greatly increased build configuration complexity for... well, having modules.
What are some alternatives?
ReactNativeGQL
compose-samples - Official Jetpack Compose samples.
rick-and-morty-api - The Rick and Morty API
android-mvvm-dagger-rxjava-retrofit - A sample project which demostrate use of MVVM and Dagger 2 with RxJava2 along with Retrofit
goctopus - Blazing fast GraphQL discovery & fingerprinting toolbox.
gamedge - An Android application for browsing video games and checking the latest gaming news from around the world.
react-native - A framework for building native applications using React
architecture-components-samples - Samples for Android Architecture Components.
subfinder - Fast passive subdomain enumeration tool.
android-showcase - 💎 Android application following best practices: Kotlin, Coroutines, JetPack, Clean Architecture, Feature Modules, Tests, MVVM, DI, Static Analysis...
graphql-query-example
fdroidclient - Android client application.