├── tests ├── conftest.py └── unit │ ├── __init__.py │ ├── helpers │ ├── __init__.py │ └── test_hashers.py │ └── repositories │ └── __init__.py ├── futuramaapi ├── helpers │ ├── __init__.py │ ├── templates.py │ └── pydantic.py ├── mixins │ └── __init__.py ├── middlewares │ ├── __init__.py │ ├── cors.py │ ├── counter.py │ └── secure.py ├── routers │ ├── rest │ │ ├── __init__.py │ │ ├── crypto │ │ │ ├── __init__.py │ │ │ └── api.py │ │ ├── episodes │ │ │ ├── __init__.py │ │ │ ├── schemas.py │ │ │ └── api.py │ │ ├── randoms │ │ │ ├── __init__.py │ │ │ └── api.py │ │ ├── root │ │ │ ├── __init__.py │ │ │ └── schemas.py │ │ ├── seasons │ │ │ ├── __init__.py │ │ │ ├── schemas.py │ │ │ └── api.py │ │ ├── tokens │ │ │ ├── __init__.py │ │ │ ├── dependencies.py │ │ │ ├── api.py │ │ │ └── schemas.py │ │ ├── users │ │ │ ├── __init__.py │ │ │ └── dependencies.py │ │ ├── callbacks │ │ │ ├── __init__.py │ │ │ └── schemas.py │ │ ├── characters │ │ │ ├── __init__.py │ │ │ └── schemas.py │ │ └── notifications │ │ │ ├── __init__.py │ │ │ ├── api.py │ │ │ └── schemas.py │ ├── services │ │ ├── __init__.py │ │ ├── seasons │ │ │ ├── __init__.py │ │ │ ├── list_seasons.py │ │ │ └── get_season.py │ │ └── _base.py │ ├── graphql │ │ ├── __init__.py │ │ ├── dependencies.py │ │ ├── api.py │ │ ├── context.py │ │ ├── validators.py │ │ ├── mixins.py │ │ └── conversion.py │ ├── exceptions.py │ └── __init__.py ├── repositories │ ├── migrations │ │ ├── __init__.py │ │ ├── versions │ │ │ ├── __init__.py │ │ │ ├── d413d1284339_initial_revision.py │ │ │ ├── c03e060df1b8_add_production_code_to_episode.py │ │ │ ├── 1b86ee33d1ba_add_broadcast_number_to_episode.py │ │ │ ├── 928d4358646c_add_image_field.py │ │ │ ├── d7ce6e6090f5_add_requests_counter.py │ │ │ ├── ca664de1bf44_add_system_message.py │ │ │ ├── 2693764b6723_add_secret_message_model.py │ │ │ ├── 81f374066bbf_add_auth_session.py │ │ │ ├── 4d5b68e5d9df_add_links_model.py │ │ │ └── ee5656c8dc7f_define_user_model.py │ │ ├── README │ │ ├── script.py.mako │ │ └── env.py │ ├── __init__.py │ └── session.py ├── __init__.py ├── web_servers │ ├── __init__.py │ └── hypercorn.py ├── __version__.py ├── utils │ ├── __init__.py │ └── _compat.py ├── apps │ └── __init__.py ├── core │ └── __init__.py └── __main__.py ├── static ├── css │ ├── base.css │ └── cookie-banner.css ├── intro-image.jpg ├── img │ ├── alien │ │ ├── drrr.webp │ │ ├── edna.webp │ │ ├── fawn.webp │ │ ├── fnog.webp │ │ ├── jrrr.webp │ │ ├── kug.webp │ │ ├── lrrr.webp │ │ ├── ndnd.webp │ │ ├── thog.webp │ │ ├── yivo.webp │ │ ├── doingg.webp │ │ ├── elzar.webp │ │ ├── flamo.webp │ │ ├── glurmo.webp │ │ ├── hobsy.webp │ │ ├── moivin.webp │ │ ├── morbo.webp │ │ ├── ornik.webp │ │ ├── sandy.webp │ │ ├── alcazar.webp │ │ ├── borax-kid.webp │ │ ├── garglie.webp │ │ ├── melllvar.webp │ │ ├── zoidfarb.webp │ │ ├── admiral-chu.webp │ │ ├── brett-blob.webp │ │ ├── curly_-joe.webp │ │ ├── feffernoose.webp │ │ ├── h_-g_-blob.webp │ │ ├── harold-zoid.webp │ │ ├── kif-kroker.webp │ │ ├── ladybuggle.webp │ │ ├── rock-alien.webp │ │ ├── slurm-queen.webp │ │ ├── space-pope.webp │ │ ├── grand-midwife.webp │ │ ├── lord-nibbler.webp │ │ ├── malachi_-jr_.webp │ │ ├── malachi_-sr_.webp │ │ ├── norm-zoidberg.webp │ │ ├── singing-wind.webp │ │ ├── female-zoidberg.webp │ │ ├── john-a_-zoidberg.webp │ │ ├── norman-zoidberg.webp │ │ ├── princess-num-num.webp │ │ ├── slurms-mackenzie.webp │ │ ├── malachi_-sr__s-wife.webp │ │ ├── melllvar_s-mother.webp │ │ ├── mr_-and-mrs_-kroker.webp │ │ ├── neutral-president.webp │ │ ├── ethan-_bubblegum_-tate.webp │ │ └── mystic-aldermen-of-the-sun.webp │ ├── human │ │ ├── biff.webp │ │ ├── chaz.webp │ │ ├── chu.webp │ │ ├── gus.webp │ │ ├── gwen.webp │ │ ├── ipji.webp │ │ ├── jim.webp │ │ ├── kirk.webp │ │ ├── koji.webp │ │ ├── lou.webp │ │ ├── minx.webp │ │ ├── mom.webp │ │ ├── nina.webp │ │ ├── sal.webp │ │ ├── sam.webp │ │ ├── sean.webp │ │ ├── walt.webp │ │ ├── albert.webp │ │ ├── benny.webp │ │ ├── butch.webp │ │ ├── candy.webp │ │ ├── dixie.webp │ │ ├── farmer.webp │ │ ├── frydo.webp │ │ ├── igner.webp │ │ ├── jeremy.webp │ │ ├── larry.webp │ │ ├── leroy.webp │ │ ├── mugger.webp │ │ ├── nj_rd.webp │ │ ├── raoul.webp │ │ ├── vernon.webp │ │ ├── vogel.webp │ │ ├── 7__-clerk.webp │ │ ├── armando.webp │ │ ├── dandy-jim.webp │ │ ├── darlene.webp │ │ ├── enos-fry.webp │ │ ├── fishy-joe.webp │ │ ├── inez-wong.webp │ │ ├── leo-wong.webp │ │ ├── marianne.webp │ │ ├── mr_-astor.webp │ │ ├── mrs_-fry.webp │ │ ├── petunia.webp │ │ ├── yancy-fry.webp │ │ ├── you-there.webp │ │ ├── andy-warhol.webp │ │ ├── beck_s-head.webp │ │ ├── bill-mcneal.webp │ │ ├── mildred-fry.webp │ │ ├── mr_-conrad.webp │ │ ├── mr_-panucci.webp │ │ ├── mrs_-astor.webp │ │ ├── mrs_-conrad.webp │ │ ├── tude-guard.webp │ │ ├── adlai-atkins.webp │ │ ├── al-gore_s-head.webp │ │ ├── angus-maczongo.webp │ │ ├── australian-man.webp │ │ ├── barack-obama.webp │ │ ├── barbados-slim.webp │ │ ├── beth-jenkins.webp │ │ ├── butch_s-mother.webp │ │ ├── captain-musky.webp │ │ ├── crack-addict.webp │ │ ├── dwight-conrad.webp │ │ ├── hacking-jack.webp │ │ ├── helmut-spargle.webp │ │ ├── hermes-conrad.webp │ │ ├── human-friend.webp │ │ ├── j_-j_-abrams.webp │ │ ├── jack-johnson.webp │ │ ├── jenny-mcneal.webp │ │ ├── john-jackson.webp │ │ ├── langdon-cobb.webp │ │ ├── lars-fillmore.webp │ │ ├── lauren-cahill.webp │ │ ├── morgan-proctor.webp │ │ ├── ned-farnsworth.webp │ │ ├── number-9-man.webp │ │ ├── philip-j_-fry.webp │ │ ├── randy-munchnik.webp │ │ ├── turanga-leela.webp │ │ ├── yancy-fry_-sr_.webp │ │ ├── zapp-brannigan.webp │ │ ├── abner-doubledeal.webp │ │ ├── amy-wong-kroker.webp │ │ ├── bob-dole_s-head.webp │ │ ├── boobs-vanderbilt.webp │ │ ├── david-farnsworth.webp │ │ ├── elizabeth-bennet.webp │ │ ├── floyd-farnsworth.webp │ │ ├── frida-waterfall.webp │ │ ├── gary-_season-2_.webp │ │ ├── hank-aaron-xxiv.webp │ │ ├── hattie-mcdoogal.webp │ │ ├── head-of-the-aclu.webp │ │ ├── hutch-waterfall.webp │ │ ├── jackie-anderson.webp │ │ ├── joe-_defrostee_.webp │ │ ├── kate-moss_s-head.webp │ │ ├── labarbara-conrad.webp │ │ ├── lucy-liu_s-head.webp │ │ ├── michelle-jenkins.webp │ │ ├── ogden-wernstrom.webp │ │ ├── philip-j_-fry-ii.webp │ │ ├── tex_-connecticut.webp │ │ ├── velma-farnsworth.webp │ │ ├── 21st-century-woman.webp │ │ ├── beastie-boys_-heads.webp │ │ ├── bill-clinton_s-head.webp │ │ ├── bob-barker_s-head.webp │ │ ├── bob-uecker_s-head.webp │ │ ├── butch_s-girlfriend.webp │ │ ├── charles-constantine.webp │ │ ├── chester-z_-arthur.webp │ │ ├── colleen-o_hallahan.webp │ │ ├── conspiracy-nutter.webp │ │ ├── dick-cheney_s-head.webp │ │ ├── dick-clark_s-head.webp │ │ ├── dr_-schlovinowitz.webp │ │ ├── eric-cartman_s-head.webp │ │ ├── free-waterfall-iii.webp │ │ ├── free-waterfall_-jr_.webp │ │ ├── free-waterfall_-sr_.webp │ │ ├── gerald-ford_s-head.webp │ │ ├── hank-aaron_s-head.webp │ │ ├── heidi-klum_s-head.webp │ │ ├── hermes-conrad_s-fan.webp │ │ ├── jimmy-carter_s-head.webp │ │ ├── joan-rivers_-head.webp │ │ ├── joe-_nation-of-joe_.webp │ │ ├── leonardo-da-vinci.webp │ │ ├── old-man-waterfall.webp │ │ ├── orson-welles_-head.webp │ │ ├── rich-little_s-head.webp │ │ ├── rob-reiner_s-head.webp │ │ ├── ron-jeremy_s-head.webp │ │ ├── ron-popeil_s-head.webp │ │ ├── ross-perot_s-head.webp │ │ ├── snoop-dogg_s-head.webp │ │ ├── the-little-prince.webp │ │ ├── traci-lords_-head.webp │ │ ├── andrew-jackson_s-head.webp │ │ ├── antonin-scalia_s-head.webp │ │ ├── billy-crystal_s-head.webp │ │ ├── cindy-crawford_s-head.webp │ │ ├── conan-o_brien_s-head.webp │ │ ├── crack-mansion-butler.webp │ │ ├── cubert-j_-farnsworth.webp │ │ ├── david-duchovny_s-head.webp │ │ ├── david-x_-cohen_s-head.webp │ │ ├── elvis-presley_s-head.webp │ │ ├── george-foreman_s-head.webp │ │ ├── herbert-hoover_s-head.webp │ │ ├── homer-simpson_s-head.webp │ │ ├── hubert-j_-farnsworth.webp │ │ ├── jonathan-frakes_-head.webp │ │ ├── laetitia-casta_s-head.webp │ │ ├── leonard-nimoy_s-head.webp │ │ ├── linda-van-schoonhoven.webp │ │ ├── martha-stewart_s-head.webp │ │ ├── matt-groening_s-head.webp │ │ ├── penn-jillette_s-head.webp │ │ ├── rebecca-romijn_s-head.webp │ │ ├── robert-wagner_s-head.webp │ │ ├── ronald-reagan_s-head.webp │ │ ├── samuel-genital_s-head.webp │ │ ├── scruffy-scruffington.webp │ │ ├── sergio-aragon_s_-head.webp │ │ ├── walter-mondale_s-head.webp │ │ ├── abraham-lincoln_s-head.webp │ │ ├── benjamin-harrison_s-head.webp │ │ ├── buzz-aldrin-_character_.webp │ │ ├── c_-randall-poopenmeyer.webp │ │ ├── charles-de-gaulle_s-head.webp │ │ ├── chester-a_-arthur_s-head.webp │ │ ├── claudia-schiffer_s-head.webp │ │ ├── deforest-kelley_s-head.webp │ │ ├── elizabeth-taylor_s-head.webp │ │ ├── gary-gygax-_character_.webp │ │ ├── george-h_-w_-bush_s-head.webp │ │ ├── george-washington_s-head.webp │ │ ├── grover-cleveland_s-head.webp │ │ ├── harry-s_-truman_s-head.webp │ │ ├── henry-kissinger_s-head.webp │ │ ├── jill-big-breasts_-head.webp │ │ ├── leonardo-dicaprio_s-head.webp │ │ ├── long-dong-silver_s-head.webp │ │ ├── martin-van-buren_s-head.webp │ │ ├── pamela-anderson_s-head.webp │ │ ├── richard-m_-nixon_s-head.webp │ │ ├── thomas-jefferson_s-head.webp │ │ ├── william-shatner_s-head.webp │ │ ├── theodore-roosevelt_s-head.webp │ │ ├── william-howard-taft_s-head.webp │ │ ├── headless-body-of-spiro-agnew.webp │ │ ├── nichelle-nichols-_character_.webp │ │ └── hubert-j_-farnsworth_s-girlfriend.webp │ ├── robot │ │ ├── bev.webp │ │ ├── boxy.webp │ │ ├── fan.webp │ │ ├── izac.webp │ │ ├── lisa.webp │ │ ├── oily.webp │ │ ├── url.webp │ │ ├── andrew.webp │ │ ├── basil.webp │ │ ├── bella.webp │ │ ├── donbot.webp │ │ ├── fanny.webp │ │ ├── fatbot.webp │ │ ├── fender.webp │ │ ├── flexo.webp │ │ ├── frybot.webp │ │ ├── ihawk.webp │ │ ├── liubot.webp │ │ ├── 7__-robot.webp │ │ ├── alphabot.webp │ │ ├── angleyne.webp │ │ ├── betabot.webp │ │ ├── calculon.webp │ │ ├── enemabot.webp │ │ ├── femputer.webp │ │ ├── foreigner.webp │ │ ├── frankie.webp │ │ ├── gammabot.webp │ │ ├── gearshift.webp │ │ ├── judge-723.webp │ │ ├── judge-724.webp │ │ ├── judge-802.webp │ │ ├── keg-robot.webp │ │ ├── leelabot.webp │ │ ├── monique.webp │ │ ├── pickles.webp │ │ ├── roberto.webp │ │ ├── robot-1x.webp │ │ ├── tiny-tim.webp │ │ ├── unit-2013.webp │ │ ├── vladimir.webp │ │ ├── animatronio.webp │ │ ├── crushinator.webp │ │ ├── destructor.webp │ │ ├── hair-robot.webp │ │ ├── hedonismbot.webp │ │ ├── kwanzaabot.webp │ │ ├── lulubelle-7.webp │ │ ├── preacherbot.webp │ │ ├── robot-devil.webp │ │ ├── sinclair-2k.webp │ │ ├── ben-rodr_guez.webp │ │ ├── billionairebot.webp │ │ ├── cartridge-unit.webp │ │ ├── chain-smoker.webp │ │ ├── daisy-mae-128k.webp │ │ ├── dr_-perceptron.webp │ │ ├── emotitron_-jr_.webp │ │ ├── gorgeous-gonks.webp │ │ ├── humorbot-5_0.webp │ │ ├── joey-mousepad.webp │ │ ├── nurse-ratchet.webp │ │ ├── parts-hilton.webp │ │ ├── charlotte-widnar.webp │ │ ├── emperor-nikolai.webp │ │ ├── macaulay-culckon.webp │ │ ├── mad-hatter-robot.webp │ │ ├── the-clearcutter.webp │ │ ├── the-robot-elders.webp │ │ ├── abraham-lincolnbot.webp │ │ ├── countess-de-la-roca.webp │ │ ├── human-_character_.webp │ │ ├── master-of-the-hunt.webp │ │ ├── robot-santa-claus.webp │ │ ├── antonio-calculon_-jr_.webp │ │ ├── comrade-greeting-card.webp │ │ ├── cymbal-banging-monkey.webp │ │ ├── francis-x_-clampazzo.webp │ │ ├── malfunctioning-eddie.webp │ │ ├── bender-bending-rodr_guez.webp │ │ ├── billy-west-_character_.webp │ │ ├── sergeant-feces-processor.webp │ │ ├── john-quincy-adding-machine.webp │ │ └── bender-bending-rodr_guez_s-first-born-son.webp │ ├── mutant │ │ ├── armo.webp │ │ ├── lazar.webp │ │ ├── mandy.webp │ │ ├── moose.webp │ │ ├── sally.webp │ │ ├── dwayne.webp │ │ ├── grotrian.webp │ │ ├── thorias.webp │ │ ├── virginia.webp │ │ ├── vyolet.webp │ │ ├── arachneon.webp │ │ ├── fly-mutant.webp │ │ ├── andy-goldman.webp │ │ ├── el-chupanibre.webp │ │ ├── turanga-munda.webp │ │ ├── munda_s-mother.webp │ │ ├── turanga-morris.webp │ │ └── munda_s-grandmother.webp │ ├── unknown │ │ ├── doug.webp │ │ ├── paco.webp │ │ ├── yuri.webp │ │ ├── ab-bot.webp │ │ ├── jezabel.webp │ │ ├── tarquin.webp │ │ ├── yanos.webp │ │ ├── adam-west.webp │ │ ├── fabricio.webp │ │ ├── robot-fox.webp │ │ ├── big-caboose.webp │ │ ├── craterface.webp │ │ ├── farmer-bot.webp │ │ ├── george-takei.webp │ │ ├── hermes-bot.webp │ │ ├── human-horn.webp │ │ ├── mecha-hermes.webp │ │ ├── mouth-mutant.webp │ │ ├── roberto-v2_0.webp │ │ ├── sam-zoidberg.webp │ │ ├── grunka-lunkas.webp │ │ ├── professor-bot.webp │ │ ├── suspendington.webp │ │ ├── walter-koenig.webp │ │ ├── bender-duplicates.webp │ │ ├── colonel-_mutant_.webp │ │ ├── stephen-hawking.webp │ │ ├── army-of-the-damned.webp │ │ └── 147573952589676412927.webp │ ├── monster │ │ ├── bigfoot.webp │ │ ├── pazuzu.webp │ │ ├── umbriel.webp │ │ ├── mr_-peppy.webp │ │ ├── tritonian-yeti.webp │ │ ├── colonel-_merman_.webp │ │ ├── loch-ness-monster.webp │ │ └── giant-unattractive-monster.webp │ └── head │ │ ├── checkers_-head.webp │ │ └── planet-express-ship.webp └── js │ └── cookie-banner.js ├── favicon.ico ├── docker-entrypoint.sh ├── robots.txt ├── Makefile ├── .github └── workflows │ ├── deploy.yml │ └── test.yml ├── .pre-commit-config.yaml ├── templates ├── auth.html ├── password_change.html └── index.html ├── .env.template ├── .env.test ├── Dockerfile ├── .gitignore ├── alembic.ini └── README.md /tests/conftest.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/helpers/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/mixins/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/helpers/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/middlewares/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/repositories/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/routers/services/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/repositories/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/routers/services/seasons/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /futuramaapi/repositories/migrations/versions/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static/css/base.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin:0; 3 | padding:0; 4 | } 5 | -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/favicon.ico -------------------------------------------------------------------------------- /futuramaapi/__init__.py: -------------------------------------------------------------------------------- 1 | from .apps import app 2 | 3 | __all__ = [ 4 | "app", 5 | ] 6 | -------------------------------------------------------------------------------- /static/intro-image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/intro-image.jpg -------------------------------------------------------------------------------- /futuramaapi/repositories/migrations/README: -------------------------------------------------------------------------------- 1 | Generic single-database configuration with an async dbapi. 2 | -------------------------------------------------------------------------------- /futuramaapi/web_servers/__init__.py: -------------------------------------------------------------------------------- 1 | from .hypercorn import run 2 | 3 | __all__ = [ 4 | "run", 5 | ] 6 | -------------------------------------------------------------------------------- /static/img/alien/drrr.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/drrr.webp -------------------------------------------------------------------------------- /static/img/alien/edna.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/edna.webp -------------------------------------------------------------------------------- /static/img/alien/fawn.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/fawn.webp -------------------------------------------------------------------------------- /static/img/alien/fnog.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/fnog.webp -------------------------------------------------------------------------------- /static/img/alien/jrrr.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/jrrr.webp -------------------------------------------------------------------------------- /static/img/alien/kug.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/kug.webp -------------------------------------------------------------------------------- /static/img/alien/lrrr.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/lrrr.webp -------------------------------------------------------------------------------- /static/img/alien/ndnd.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/ndnd.webp -------------------------------------------------------------------------------- /static/img/alien/thog.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/thog.webp -------------------------------------------------------------------------------- /static/img/alien/yivo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/yivo.webp -------------------------------------------------------------------------------- /static/img/human/biff.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/biff.webp -------------------------------------------------------------------------------- /static/img/human/chaz.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/chaz.webp -------------------------------------------------------------------------------- /static/img/human/chu.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/chu.webp -------------------------------------------------------------------------------- /static/img/human/gus.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/gus.webp -------------------------------------------------------------------------------- /static/img/human/gwen.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/gwen.webp -------------------------------------------------------------------------------- /static/img/human/ipji.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/ipji.webp -------------------------------------------------------------------------------- /static/img/human/jim.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jim.webp -------------------------------------------------------------------------------- /static/img/human/kirk.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/kirk.webp -------------------------------------------------------------------------------- /static/img/human/koji.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/koji.webp -------------------------------------------------------------------------------- /static/img/human/lou.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/lou.webp -------------------------------------------------------------------------------- /static/img/human/minx.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/minx.webp -------------------------------------------------------------------------------- /static/img/human/mom.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mom.webp -------------------------------------------------------------------------------- /static/img/human/nina.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/nina.webp -------------------------------------------------------------------------------- /static/img/human/sal.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/sal.webp -------------------------------------------------------------------------------- /static/img/human/sam.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/sam.webp -------------------------------------------------------------------------------- /static/img/human/sean.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/sean.webp -------------------------------------------------------------------------------- /static/img/human/walt.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/walt.webp -------------------------------------------------------------------------------- /static/img/robot/bev.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/bev.webp -------------------------------------------------------------------------------- /static/img/robot/boxy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/boxy.webp -------------------------------------------------------------------------------- /static/img/robot/fan.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/fan.webp -------------------------------------------------------------------------------- /static/img/robot/izac.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/izac.webp -------------------------------------------------------------------------------- /static/img/robot/lisa.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/lisa.webp -------------------------------------------------------------------------------- /static/img/robot/oily.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/oily.webp -------------------------------------------------------------------------------- /static/img/robot/url.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/url.webp -------------------------------------------------------------------------------- /futuramaapi/__version__.py: -------------------------------------------------------------------------------- 1 | from futuramaapi.utils import metadata 2 | 3 | __version__ = metadata["version"] 4 | -------------------------------------------------------------------------------- /futuramaapi/routers/graphql/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /static/img/alien/doingg.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/doingg.webp -------------------------------------------------------------------------------- /static/img/alien/elzar.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/elzar.webp -------------------------------------------------------------------------------- /static/img/alien/flamo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/flamo.webp -------------------------------------------------------------------------------- /static/img/alien/glurmo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/glurmo.webp -------------------------------------------------------------------------------- /static/img/alien/hobsy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/hobsy.webp -------------------------------------------------------------------------------- /static/img/alien/moivin.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/moivin.webp -------------------------------------------------------------------------------- /static/img/alien/morbo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/morbo.webp -------------------------------------------------------------------------------- /static/img/alien/ornik.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/ornik.webp -------------------------------------------------------------------------------- /static/img/alien/sandy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/sandy.webp -------------------------------------------------------------------------------- /static/img/human/albert.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/albert.webp -------------------------------------------------------------------------------- /static/img/human/benny.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/benny.webp -------------------------------------------------------------------------------- /static/img/human/butch.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/butch.webp -------------------------------------------------------------------------------- /static/img/human/candy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/candy.webp -------------------------------------------------------------------------------- /static/img/human/dixie.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/dixie.webp -------------------------------------------------------------------------------- /static/img/human/farmer.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/farmer.webp -------------------------------------------------------------------------------- /static/img/human/frydo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/frydo.webp -------------------------------------------------------------------------------- /static/img/human/igner.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/igner.webp -------------------------------------------------------------------------------- /static/img/human/jeremy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jeremy.webp -------------------------------------------------------------------------------- /static/img/human/larry.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/larry.webp -------------------------------------------------------------------------------- /static/img/human/leroy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/leroy.webp -------------------------------------------------------------------------------- /static/img/human/mugger.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mugger.webp -------------------------------------------------------------------------------- /static/img/human/nj_rd.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/nj_rd.webp -------------------------------------------------------------------------------- /static/img/human/raoul.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/raoul.webp -------------------------------------------------------------------------------- /static/img/human/vernon.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/vernon.webp -------------------------------------------------------------------------------- /static/img/human/vogel.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/vogel.webp -------------------------------------------------------------------------------- /static/img/mutant/armo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/armo.webp -------------------------------------------------------------------------------- /static/img/mutant/lazar.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/lazar.webp -------------------------------------------------------------------------------- /static/img/mutant/mandy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/mandy.webp -------------------------------------------------------------------------------- /static/img/mutant/moose.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/moose.webp -------------------------------------------------------------------------------- /static/img/mutant/sally.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/sally.webp -------------------------------------------------------------------------------- /static/img/robot/andrew.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/andrew.webp -------------------------------------------------------------------------------- /static/img/robot/basil.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/basil.webp -------------------------------------------------------------------------------- /static/img/robot/bella.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/bella.webp -------------------------------------------------------------------------------- /static/img/robot/donbot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/donbot.webp -------------------------------------------------------------------------------- /static/img/robot/fanny.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/fanny.webp -------------------------------------------------------------------------------- /static/img/robot/fatbot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/fatbot.webp -------------------------------------------------------------------------------- /static/img/robot/fender.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/fender.webp -------------------------------------------------------------------------------- /static/img/robot/flexo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/flexo.webp -------------------------------------------------------------------------------- /static/img/robot/frybot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/frybot.webp -------------------------------------------------------------------------------- /static/img/robot/ihawk.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/ihawk.webp -------------------------------------------------------------------------------- /static/img/robot/liubot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/liubot.webp -------------------------------------------------------------------------------- /static/img/unknown/doug.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/doug.webp -------------------------------------------------------------------------------- /static/img/unknown/paco.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/paco.webp -------------------------------------------------------------------------------- /static/img/unknown/yuri.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/yuri.webp -------------------------------------------------------------------------------- /futuramaapi/routers/rest/crypto/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/episodes/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/randoms/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/root/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/seasons/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/tokens/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/users/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /static/img/alien/alcazar.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/alcazar.webp -------------------------------------------------------------------------------- /static/img/alien/borax-kid.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/borax-kid.webp -------------------------------------------------------------------------------- /static/img/alien/garglie.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/garglie.webp -------------------------------------------------------------------------------- /static/img/alien/melllvar.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/melllvar.webp -------------------------------------------------------------------------------- /static/img/alien/zoidfarb.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/zoidfarb.webp -------------------------------------------------------------------------------- /static/img/human/7__-clerk.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/7__-clerk.webp -------------------------------------------------------------------------------- /static/img/human/armando.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/armando.webp -------------------------------------------------------------------------------- /static/img/human/dandy-jim.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/dandy-jim.webp -------------------------------------------------------------------------------- /static/img/human/darlene.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/darlene.webp -------------------------------------------------------------------------------- /static/img/human/enos-fry.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/enos-fry.webp -------------------------------------------------------------------------------- /static/img/human/fishy-joe.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/fishy-joe.webp -------------------------------------------------------------------------------- /static/img/human/inez-wong.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/inez-wong.webp -------------------------------------------------------------------------------- /static/img/human/leo-wong.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/leo-wong.webp -------------------------------------------------------------------------------- /static/img/human/marianne.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/marianne.webp -------------------------------------------------------------------------------- /static/img/human/mr_-astor.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mr_-astor.webp -------------------------------------------------------------------------------- /static/img/human/mrs_-fry.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mrs_-fry.webp -------------------------------------------------------------------------------- /static/img/human/petunia.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/petunia.webp -------------------------------------------------------------------------------- /static/img/human/yancy-fry.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/yancy-fry.webp -------------------------------------------------------------------------------- /static/img/human/you-there.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/you-there.webp -------------------------------------------------------------------------------- /static/img/monster/bigfoot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/bigfoot.webp -------------------------------------------------------------------------------- /static/img/monster/pazuzu.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/pazuzu.webp -------------------------------------------------------------------------------- /static/img/monster/umbriel.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/umbriel.webp -------------------------------------------------------------------------------- /static/img/mutant/dwayne.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/dwayne.webp -------------------------------------------------------------------------------- /static/img/mutant/grotrian.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/grotrian.webp -------------------------------------------------------------------------------- /static/img/mutant/thorias.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/thorias.webp -------------------------------------------------------------------------------- /static/img/mutant/virginia.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/virginia.webp -------------------------------------------------------------------------------- /static/img/mutant/vyolet.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/vyolet.webp -------------------------------------------------------------------------------- /static/img/robot/7__-robot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/7__-robot.webp -------------------------------------------------------------------------------- /static/img/robot/alphabot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/alphabot.webp -------------------------------------------------------------------------------- /static/img/robot/angleyne.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/angleyne.webp -------------------------------------------------------------------------------- /static/img/robot/betabot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/betabot.webp -------------------------------------------------------------------------------- /static/img/robot/calculon.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/calculon.webp -------------------------------------------------------------------------------- /static/img/robot/enemabot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/enemabot.webp -------------------------------------------------------------------------------- /static/img/robot/femputer.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/femputer.webp -------------------------------------------------------------------------------- /static/img/robot/foreigner.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/foreigner.webp -------------------------------------------------------------------------------- /static/img/robot/frankie.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/frankie.webp -------------------------------------------------------------------------------- /static/img/robot/gammabot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/gammabot.webp -------------------------------------------------------------------------------- /static/img/robot/gearshift.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/gearshift.webp -------------------------------------------------------------------------------- /static/img/robot/judge-723.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/judge-723.webp -------------------------------------------------------------------------------- /static/img/robot/judge-724.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/judge-724.webp -------------------------------------------------------------------------------- /static/img/robot/judge-802.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/judge-802.webp -------------------------------------------------------------------------------- /static/img/robot/keg-robot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/keg-robot.webp -------------------------------------------------------------------------------- /static/img/robot/leelabot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/leelabot.webp -------------------------------------------------------------------------------- /static/img/robot/monique.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/monique.webp -------------------------------------------------------------------------------- /static/img/robot/pickles.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/pickles.webp -------------------------------------------------------------------------------- /static/img/robot/roberto.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/roberto.webp -------------------------------------------------------------------------------- /static/img/robot/robot-1x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/robot-1x.webp -------------------------------------------------------------------------------- /static/img/robot/tiny-tim.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/tiny-tim.webp -------------------------------------------------------------------------------- /static/img/robot/unit-2013.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/unit-2013.webp -------------------------------------------------------------------------------- /static/img/robot/vladimir.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/vladimir.webp -------------------------------------------------------------------------------- /static/img/unknown/ab-bot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/ab-bot.webp -------------------------------------------------------------------------------- /static/img/unknown/jezabel.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/jezabel.webp -------------------------------------------------------------------------------- /static/img/unknown/tarquin.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/tarquin.webp -------------------------------------------------------------------------------- /static/img/unknown/yanos.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/yanos.webp -------------------------------------------------------------------------------- /futuramaapi/routers/rest/callbacks/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/characters/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/notifications/__init__.py: -------------------------------------------------------------------------------- 1 | from .api import router 2 | 3 | __all__ = [ 4 | "router", 5 | ] 6 | -------------------------------------------------------------------------------- /static/img/alien/admiral-chu.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/admiral-chu.webp -------------------------------------------------------------------------------- /static/img/alien/brett-blob.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/brett-blob.webp -------------------------------------------------------------------------------- /static/img/alien/curly_-joe.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/curly_-joe.webp -------------------------------------------------------------------------------- /static/img/alien/feffernoose.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/feffernoose.webp -------------------------------------------------------------------------------- /static/img/alien/h_-g_-blob.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/h_-g_-blob.webp -------------------------------------------------------------------------------- /static/img/alien/harold-zoid.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/harold-zoid.webp -------------------------------------------------------------------------------- /static/img/alien/kif-kroker.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/kif-kroker.webp -------------------------------------------------------------------------------- /static/img/alien/ladybuggle.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/ladybuggle.webp -------------------------------------------------------------------------------- /static/img/alien/rock-alien.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/rock-alien.webp -------------------------------------------------------------------------------- /static/img/alien/slurm-queen.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/slurm-queen.webp -------------------------------------------------------------------------------- /static/img/alien/space-pope.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/space-pope.webp -------------------------------------------------------------------------------- /static/img/human/andy-warhol.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/andy-warhol.webp -------------------------------------------------------------------------------- /static/img/human/beck_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/beck_s-head.webp -------------------------------------------------------------------------------- /static/img/human/bill-mcneal.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/bill-mcneal.webp -------------------------------------------------------------------------------- /static/img/human/mildred-fry.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mildred-fry.webp -------------------------------------------------------------------------------- /static/img/human/mr_-conrad.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mr_-conrad.webp -------------------------------------------------------------------------------- /static/img/human/mr_-panucci.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mr_-panucci.webp -------------------------------------------------------------------------------- /static/img/human/mrs_-astor.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mrs_-astor.webp -------------------------------------------------------------------------------- /static/img/human/mrs_-conrad.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/mrs_-conrad.webp -------------------------------------------------------------------------------- /static/img/human/tude-guard.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/tude-guard.webp -------------------------------------------------------------------------------- /static/img/monster/mr_-peppy.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/mr_-peppy.webp -------------------------------------------------------------------------------- /static/img/mutant/arachneon.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/arachneon.webp -------------------------------------------------------------------------------- /static/img/mutant/fly-mutant.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/fly-mutant.webp -------------------------------------------------------------------------------- /static/img/robot/animatronio.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/animatronio.webp -------------------------------------------------------------------------------- /static/img/robot/crushinator.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/crushinator.webp -------------------------------------------------------------------------------- /static/img/robot/destructor.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/destructor.webp -------------------------------------------------------------------------------- /static/img/robot/hair-robot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/hair-robot.webp -------------------------------------------------------------------------------- /static/img/robot/hedonismbot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/hedonismbot.webp -------------------------------------------------------------------------------- /static/img/robot/kwanzaabot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/kwanzaabot.webp -------------------------------------------------------------------------------- /static/img/robot/lulubelle-7.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/lulubelle-7.webp -------------------------------------------------------------------------------- /static/img/robot/preacherbot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/preacherbot.webp -------------------------------------------------------------------------------- /static/img/robot/robot-devil.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/robot-devil.webp -------------------------------------------------------------------------------- /static/img/robot/sinclair-2k.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/sinclair-2k.webp -------------------------------------------------------------------------------- /static/img/unknown/adam-west.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/adam-west.webp -------------------------------------------------------------------------------- /static/img/unknown/fabricio.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/fabricio.webp -------------------------------------------------------------------------------- /static/img/unknown/robot-fox.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/robot-fox.webp -------------------------------------------------------------------------------- /static/img/alien/grand-midwife.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/grand-midwife.webp -------------------------------------------------------------------------------- /static/img/alien/lord-nibbler.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/lord-nibbler.webp -------------------------------------------------------------------------------- /static/img/alien/malachi_-jr_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/malachi_-jr_.webp -------------------------------------------------------------------------------- /static/img/alien/malachi_-sr_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/malachi_-sr_.webp -------------------------------------------------------------------------------- /static/img/alien/norm-zoidberg.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/norm-zoidberg.webp -------------------------------------------------------------------------------- /static/img/alien/singing-wind.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/singing-wind.webp -------------------------------------------------------------------------------- /static/img/head/checkers_-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/head/checkers_-head.webp -------------------------------------------------------------------------------- /static/img/human/adlai-atkins.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/adlai-atkins.webp -------------------------------------------------------------------------------- /static/img/human/al-gore_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/al-gore_s-head.webp -------------------------------------------------------------------------------- /static/img/human/angus-maczongo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/angus-maczongo.webp -------------------------------------------------------------------------------- /static/img/human/australian-man.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/australian-man.webp -------------------------------------------------------------------------------- /static/img/human/barack-obama.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/barack-obama.webp -------------------------------------------------------------------------------- /static/img/human/barbados-slim.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/barbados-slim.webp -------------------------------------------------------------------------------- /static/img/human/beth-jenkins.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/beth-jenkins.webp -------------------------------------------------------------------------------- /static/img/human/butch_s-mother.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/butch_s-mother.webp -------------------------------------------------------------------------------- /static/img/human/captain-musky.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/captain-musky.webp -------------------------------------------------------------------------------- /static/img/human/crack-addict.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/crack-addict.webp -------------------------------------------------------------------------------- /static/img/human/dwight-conrad.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/dwight-conrad.webp -------------------------------------------------------------------------------- /static/img/human/hacking-jack.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hacking-jack.webp -------------------------------------------------------------------------------- /static/img/human/helmut-spargle.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/helmut-spargle.webp -------------------------------------------------------------------------------- /static/img/human/hermes-conrad.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hermes-conrad.webp -------------------------------------------------------------------------------- /static/img/human/human-friend.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/human-friend.webp -------------------------------------------------------------------------------- /static/img/human/j_-j_-abrams.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/j_-j_-abrams.webp -------------------------------------------------------------------------------- /static/img/human/jack-johnson.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jack-johnson.webp -------------------------------------------------------------------------------- /static/img/human/jenny-mcneal.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jenny-mcneal.webp -------------------------------------------------------------------------------- /static/img/human/john-jackson.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/john-jackson.webp -------------------------------------------------------------------------------- /static/img/human/langdon-cobb.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/langdon-cobb.webp -------------------------------------------------------------------------------- /static/img/human/lars-fillmore.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/lars-fillmore.webp -------------------------------------------------------------------------------- /static/img/human/lauren-cahill.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/lauren-cahill.webp -------------------------------------------------------------------------------- /static/img/human/morgan-proctor.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/morgan-proctor.webp -------------------------------------------------------------------------------- /static/img/human/ned-farnsworth.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/ned-farnsworth.webp -------------------------------------------------------------------------------- /static/img/human/number-9-man.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/number-9-man.webp -------------------------------------------------------------------------------- /static/img/human/philip-j_-fry.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/philip-j_-fry.webp -------------------------------------------------------------------------------- /static/img/human/randy-munchnik.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/randy-munchnik.webp -------------------------------------------------------------------------------- /static/img/human/turanga-leela.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/turanga-leela.webp -------------------------------------------------------------------------------- /static/img/human/yancy-fry_-sr_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/yancy-fry_-sr_.webp -------------------------------------------------------------------------------- /static/img/human/zapp-brannigan.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/zapp-brannigan.webp -------------------------------------------------------------------------------- /static/img/mutant/andy-goldman.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/andy-goldman.webp -------------------------------------------------------------------------------- /static/img/mutant/el-chupanibre.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/el-chupanibre.webp -------------------------------------------------------------------------------- /static/img/mutant/turanga-munda.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/turanga-munda.webp -------------------------------------------------------------------------------- /static/img/robot/ben-rodr_guez.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/ben-rodr_guez.webp -------------------------------------------------------------------------------- /static/img/robot/billionairebot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/billionairebot.webp -------------------------------------------------------------------------------- /static/img/robot/cartridge-unit.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/cartridge-unit.webp -------------------------------------------------------------------------------- /static/img/robot/chain-smoker.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/chain-smoker.webp -------------------------------------------------------------------------------- /static/img/robot/daisy-mae-128k.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/daisy-mae-128k.webp -------------------------------------------------------------------------------- /static/img/robot/dr_-perceptron.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/dr_-perceptron.webp -------------------------------------------------------------------------------- /static/img/robot/emotitron_-jr_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/emotitron_-jr_.webp -------------------------------------------------------------------------------- /static/img/robot/gorgeous-gonks.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/gorgeous-gonks.webp -------------------------------------------------------------------------------- /static/img/robot/humorbot-5_0.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/humorbot-5_0.webp -------------------------------------------------------------------------------- /static/img/robot/joey-mousepad.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/joey-mousepad.webp -------------------------------------------------------------------------------- /static/img/robot/nurse-ratchet.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/nurse-ratchet.webp -------------------------------------------------------------------------------- /static/img/robot/parts-hilton.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/parts-hilton.webp -------------------------------------------------------------------------------- /static/img/unknown/big-caboose.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/big-caboose.webp -------------------------------------------------------------------------------- /static/img/unknown/craterface.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/craterface.webp -------------------------------------------------------------------------------- /static/img/unknown/farmer-bot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/farmer-bot.webp -------------------------------------------------------------------------------- /static/img/unknown/george-takei.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/george-takei.webp -------------------------------------------------------------------------------- /static/img/unknown/hermes-bot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/hermes-bot.webp -------------------------------------------------------------------------------- /static/img/unknown/human-horn.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/human-horn.webp -------------------------------------------------------------------------------- /static/img/unknown/mecha-hermes.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/mecha-hermes.webp -------------------------------------------------------------------------------- /static/img/unknown/mouth-mutant.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/mouth-mutant.webp -------------------------------------------------------------------------------- /static/img/unknown/roberto-v2_0.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/roberto-v2_0.webp -------------------------------------------------------------------------------- /static/img/unknown/sam-zoidberg.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/sam-zoidberg.webp -------------------------------------------------------------------------------- /static/img/alien/female-zoidberg.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/female-zoidberg.webp -------------------------------------------------------------------------------- /static/img/alien/john-a_-zoidberg.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/john-a_-zoidberg.webp -------------------------------------------------------------------------------- /static/img/alien/norman-zoidberg.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/norman-zoidberg.webp -------------------------------------------------------------------------------- /static/img/alien/princess-num-num.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/princess-num-num.webp -------------------------------------------------------------------------------- /static/img/alien/slurms-mackenzie.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/slurms-mackenzie.webp -------------------------------------------------------------------------------- /static/img/human/abner-doubledeal.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/abner-doubledeal.webp -------------------------------------------------------------------------------- /static/img/human/amy-wong-kroker.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/amy-wong-kroker.webp -------------------------------------------------------------------------------- /static/img/human/bob-dole_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/bob-dole_s-head.webp -------------------------------------------------------------------------------- /static/img/human/boobs-vanderbilt.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/boobs-vanderbilt.webp -------------------------------------------------------------------------------- /static/img/human/david-farnsworth.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/david-farnsworth.webp -------------------------------------------------------------------------------- /static/img/human/elizabeth-bennet.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/elizabeth-bennet.webp -------------------------------------------------------------------------------- /static/img/human/floyd-farnsworth.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/floyd-farnsworth.webp -------------------------------------------------------------------------------- /static/img/human/frida-waterfall.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/frida-waterfall.webp -------------------------------------------------------------------------------- /static/img/human/gary-_season-2_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/gary-_season-2_.webp -------------------------------------------------------------------------------- /static/img/human/hank-aaron-xxiv.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hank-aaron-xxiv.webp -------------------------------------------------------------------------------- /static/img/human/hattie-mcdoogal.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hattie-mcdoogal.webp -------------------------------------------------------------------------------- /static/img/human/head-of-the-aclu.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/head-of-the-aclu.webp -------------------------------------------------------------------------------- /static/img/human/hutch-waterfall.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hutch-waterfall.webp -------------------------------------------------------------------------------- /static/img/human/jackie-anderson.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jackie-anderson.webp -------------------------------------------------------------------------------- /static/img/human/joe-_defrostee_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/joe-_defrostee_.webp -------------------------------------------------------------------------------- /static/img/human/kate-moss_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/kate-moss_s-head.webp -------------------------------------------------------------------------------- /static/img/human/labarbara-conrad.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/labarbara-conrad.webp -------------------------------------------------------------------------------- /static/img/human/lucy-liu_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/lucy-liu_s-head.webp -------------------------------------------------------------------------------- /static/img/human/michelle-jenkins.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/michelle-jenkins.webp -------------------------------------------------------------------------------- /static/img/human/ogden-wernstrom.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/ogden-wernstrom.webp -------------------------------------------------------------------------------- /static/img/human/philip-j_-fry-ii.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/philip-j_-fry-ii.webp -------------------------------------------------------------------------------- /static/img/human/tex_-connecticut.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/tex_-connecticut.webp -------------------------------------------------------------------------------- /static/img/human/velma-farnsworth.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/velma-farnsworth.webp -------------------------------------------------------------------------------- /static/img/monster/tritonian-yeti.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/tritonian-yeti.webp -------------------------------------------------------------------------------- /static/img/mutant/munda_s-mother.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/munda_s-mother.webp -------------------------------------------------------------------------------- /static/img/mutant/turanga-morris.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/turanga-morris.webp -------------------------------------------------------------------------------- /static/img/robot/charlotte-widnar.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/charlotte-widnar.webp -------------------------------------------------------------------------------- /static/img/robot/emperor-nikolai.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/emperor-nikolai.webp -------------------------------------------------------------------------------- /static/img/robot/macaulay-culckon.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/macaulay-culckon.webp -------------------------------------------------------------------------------- /static/img/robot/mad-hatter-robot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/mad-hatter-robot.webp -------------------------------------------------------------------------------- /static/img/robot/the-clearcutter.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/the-clearcutter.webp -------------------------------------------------------------------------------- /static/img/robot/the-robot-elders.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/the-robot-elders.webp -------------------------------------------------------------------------------- /static/img/unknown/grunka-lunkas.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/grunka-lunkas.webp -------------------------------------------------------------------------------- /static/img/unknown/professor-bot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/professor-bot.webp -------------------------------------------------------------------------------- /static/img/unknown/suspendington.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/suspendington.webp -------------------------------------------------------------------------------- /static/img/unknown/walter-koenig.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/walter-koenig.webp -------------------------------------------------------------------------------- /futuramaapi/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from ._compat import config, metadata 2 | 3 | __all__ = [ 4 | "config", 5 | "metadata", 6 | ] 7 | -------------------------------------------------------------------------------- /static/img/alien/malachi_-sr__s-wife.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/malachi_-sr__s-wife.webp -------------------------------------------------------------------------------- /static/img/alien/melllvar_s-mother.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/melllvar_s-mother.webp -------------------------------------------------------------------------------- /static/img/alien/mr_-and-mrs_-kroker.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/mr_-and-mrs_-kroker.webp -------------------------------------------------------------------------------- /static/img/alien/neutral-president.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/neutral-president.webp -------------------------------------------------------------------------------- /static/img/head/planet-express-ship.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/head/planet-express-ship.webp -------------------------------------------------------------------------------- /static/img/human/21st-century-woman.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/21st-century-woman.webp -------------------------------------------------------------------------------- /static/img/human/beastie-boys_-heads.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/beastie-boys_-heads.webp -------------------------------------------------------------------------------- /static/img/human/bill-clinton_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/bill-clinton_s-head.webp -------------------------------------------------------------------------------- /static/img/human/bob-barker_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/bob-barker_s-head.webp -------------------------------------------------------------------------------- /static/img/human/bob-uecker_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/bob-uecker_s-head.webp -------------------------------------------------------------------------------- /static/img/human/butch_s-girlfriend.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/butch_s-girlfriend.webp -------------------------------------------------------------------------------- /static/img/human/charles-constantine.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/charles-constantine.webp -------------------------------------------------------------------------------- /static/img/human/chester-z_-arthur.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/chester-z_-arthur.webp -------------------------------------------------------------------------------- /static/img/human/colleen-o_hallahan.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/colleen-o_hallahan.webp -------------------------------------------------------------------------------- /static/img/human/conspiracy-nutter.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/conspiracy-nutter.webp -------------------------------------------------------------------------------- /static/img/human/dick-cheney_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/dick-cheney_s-head.webp -------------------------------------------------------------------------------- /static/img/human/dick-clark_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/dick-clark_s-head.webp -------------------------------------------------------------------------------- /static/img/human/dr_-schlovinowitz.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/dr_-schlovinowitz.webp -------------------------------------------------------------------------------- /static/img/human/eric-cartman_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/eric-cartman_s-head.webp -------------------------------------------------------------------------------- /static/img/human/free-waterfall-iii.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/free-waterfall-iii.webp -------------------------------------------------------------------------------- /static/img/human/free-waterfall_-jr_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/free-waterfall_-jr_.webp -------------------------------------------------------------------------------- /static/img/human/free-waterfall_-sr_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/free-waterfall_-sr_.webp -------------------------------------------------------------------------------- /static/img/human/gerald-ford_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/gerald-ford_s-head.webp -------------------------------------------------------------------------------- /static/img/human/hank-aaron_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hank-aaron_s-head.webp -------------------------------------------------------------------------------- /static/img/human/heidi-klum_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/heidi-klum_s-head.webp -------------------------------------------------------------------------------- /static/img/human/hermes-conrad_s-fan.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hermes-conrad_s-fan.webp -------------------------------------------------------------------------------- /static/img/human/jimmy-carter_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jimmy-carter_s-head.webp -------------------------------------------------------------------------------- /static/img/human/joan-rivers_-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/joan-rivers_-head.webp -------------------------------------------------------------------------------- /static/img/human/joe-_nation-of-joe_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/joe-_nation-of-joe_.webp -------------------------------------------------------------------------------- /static/img/human/leonardo-da-vinci.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/leonardo-da-vinci.webp -------------------------------------------------------------------------------- /static/img/human/old-man-waterfall.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/old-man-waterfall.webp -------------------------------------------------------------------------------- /static/img/human/orson-welles_-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/orson-welles_-head.webp -------------------------------------------------------------------------------- /static/img/human/rich-little_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/rich-little_s-head.webp -------------------------------------------------------------------------------- /static/img/human/rob-reiner_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/rob-reiner_s-head.webp -------------------------------------------------------------------------------- /static/img/human/ron-jeremy_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/ron-jeremy_s-head.webp -------------------------------------------------------------------------------- /static/img/human/ron-popeil_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/ron-popeil_s-head.webp -------------------------------------------------------------------------------- /static/img/human/ross-perot_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/ross-perot_s-head.webp -------------------------------------------------------------------------------- /static/img/human/snoop-dogg_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/snoop-dogg_s-head.webp -------------------------------------------------------------------------------- /static/img/human/the-little-prince.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/the-little-prince.webp -------------------------------------------------------------------------------- /static/img/human/traci-lords_-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/traci-lords_-head.webp -------------------------------------------------------------------------------- /static/img/monster/colonel-_merman_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/colonel-_merman_.webp -------------------------------------------------------------------------------- /static/img/monster/loch-ness-monster.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/loch-ness-monster.webp -------------------------------------------------------------------------------- /static/img/robot/abraham-lincolnbot.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/abraham-lincolnbot.webp -------------------------------------------------------------------------------- /static/img/robot/countess-de-la-roca.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/countess-de-la-roca.webp -------------------------------------------------------------------------------- /static/img/robot/human-_character_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/human-_character_.webp -------------------------------------------------------------------------------- /static/img/robot/master-of-the-hunt.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/master-of-the-hunt.webp -------------------------------------------------------------------------------- /static/img/robot/robot-santa-claus.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/robot-santa-claus.webp -------------------------------------------------------------------------------- /static/img/unknown/bender-duplicates.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/bender-duplicates.webp -------------------------------------------------------------------------------- /static/img/unknown/colonel-_mutant_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/colonel-_mutant_.webp -------------------------------------------------------------------------------- /static/img/unknown/stephen-hawking.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/stephen-hawking.webp -------------------------------------------------------------------------------- /static/img/human/andrew-jackson_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/andrew-jackson_s-head.webp -------------------------------------------------------------------------------- /static/img/human/antonin-scalia_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/antonin-scalia_s-head.webp -------------------------------------------------------------------------------- /static/img/human/billy-crystal_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/billy-crystal_s-head.webp -------------------------------------------------------------------------------- /static/img/human/cindy-crawford_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/cindy-crawford_s-head.webp -------------------------------------------------------------------------------- /static/img/human/conan-o_brien_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/conan-o_brien_s-head.webp -------------------------------------------------------------------------------- /static/img/human/crack-mansion-butler.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/crack-mansion-butler.webp -------------------------------------------------------------------------------- /static/img/human/cubert-j_-farnsworth.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/cubert-j_-farnsworth.webp -------------------------------------------------------------------------------- /static/img/human/david-duchovny_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/david-duchovny_s-head.webp -------------------------------------------------------------------------------- /static/img/human/david-x_-cohen_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/david-x_-cohen_s-head.webp -------------------------------------------------------------------------------- /static/img/human/elvis-presley_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/elvis-presley_s-head.webp -------------------------------------------------------------------------------- /static/img/human/george-foreman_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/george-foreman_s-head.webp -------------------------------------------------------------------------------- /static/img/human/herbert-hoover_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/herbert-hoover_s-head.webp -------------------------------------------------------------------------------- /static/img/human/homer-simpson_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/homer-simpson_s-head.webp -------------------------------------------------------------------------------- /static/img/human/hubert-j_-farnsworth.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hubert-j_-farnsworth.webp -------------------------------------------------------------------------------- /static/img/human/jonathan-frakes_-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jonathan-frakes_-head.webp -------------------------------------------------------------------------------- /static/img/human/laetitia-casta_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/laetitia-casta_s-head.webp -------------------------------------------------------------------------------- /static/img/human/leonard-nimoy_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/leonard-nimoy_s-head.webp -------------------------------------------------------------------------------- /static/img/human/linda-van-schoonhoven.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/linda-van-schoonhoven.webp -------------------------------------------------------------------------------- /static/img/human/martha-stewart_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/martha-stewart_s-head.webp -------------------------------------------------------------------------------- /static/img/human/matt-groening_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/matt-groening_s-head.webp -------------------------------------------------------------------------------- /static/img/human/penn-jillette_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/penn-jillette_s-head.webp -------------------------------------------------------------------------------- /static/img/human/rebecca-romijn_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/rebecca-romijn_s-head.webp -------------------------------------------------------------------------------- /static/img/human/robert-wagner_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/robert-wagner_s-head.webp -------------------------------------------------------------------------------- /static/img/human/ronald-reagan_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/ronald-reagan_s-head.webp -------------------------------------------------------------------------------- /static/img/human/samuel-genital_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/samuel-genital_s-head.webp -------------------------------------------------------------------------------- /static/img/human/scruffy-scruffington.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/scruffy-scruffington.webp -------------------------------------------------------------------------------- /static/img/human/sergio-aragon_s_-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/sergio-aragon_s_-head.webp -------------------------------------------------------------------------------- /static/img/human/walter-mondale_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/walter-mondale_s-head.webp -------------------------------------------------------------------------------- /static/img/mutant/munda_s-grandmother.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/mutant/munda_s-grandmother.webp -------------------------------------------------------------------------------- /static/img/robot/antonio-calculon_-jr_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/antonio-calculon_-jr_.webp -------------------------------------------------------------------------------- /static/img/robot/comrade-greeting-card.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/comrade-greeting-card.webp -------------------------------------------------------------------------------- /static/img/robot/cymbal-banging-monkey.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/cymbal-banging-monkey.webp -------------------------------------------------------------------------------- /static/img/robot/francis-x_-clampazzo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/francis-x_-clampazzo.webp -------------------------------------------------------------------------------- /static/img/robot/malfunctioning-eddie.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/malfunctioning-eddie.webp -------------------------------------------------------------------------------- /static/img/unknown/army-of-the-damned.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/army-of-the-damned.webp -------------------------------------------------------------------------------- /static/img/alien/ethan-_bubblegum_-tate.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/ethan-_bubblegum_-tate.webp -------------------------------------------------------------------------------- /static/img/human/abraham-lincoln_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/abraham-lincoln_s-head.webp -------------------------------------------------------------------------------- /static/img/human/benjamin-harrison_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/benjamin-harrison_s-head.webp -------------------------------------------------------------------------------- /static/img/human/buzz-aldrin-_character_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/buzz-aldrin-_character_.webp -------------------------------------------------------------------------------- /static/img/human/c_-randall-poopenmeyer.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/c_-randall-poopenmeyer.webp -------------------------------------------------------------------------------- /static/img/human/charles-de-gaulle_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/charles-de-gaulle_s-head.webp -------------------------------------------------------------------------------- /static/img/human/chester-a_-arthur_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/chester-a_-arthur_s-head.webp -------------------------------------------------------------------------------- /static/img/human/claudia-schiffer_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/claudia-schiffer_s-head.webp -------------------------------------------------------------------------------- /static/img/human/deforest-kelley_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/deforest-kelley_s-head.webp -------------------------------------------------------------------------------- /static/img/human/elizabeth-taylor_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/elizabeth-taylor_s-head.webp -------------------------------------------------------------------------------- /static/img/human/gary-gygax-_character_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/gary-gygax-_character_.webp -------------------------------------------------------------------------------- /static/img/human/george-h_-w_-bush_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/george-h_-w_-bush_s-head.webp -------------------------------------------------------------------------------- /static/img/human/george-washington_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/george-washington_s-head.webp -------------------------------------------------------------------------------- /static/img/human/grover-cleveland_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/grover-cleveland_s-head.webp -------------------------------------------------------------------------------- /static/img/human/harry-s_-truman_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/harry-s_-truman_s-head.webp -------------------------------------------------------------------------------- /static/img/human/henry-kissinger_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/henry-kissinger_s-head.webp -------------------------------------------------------------------------------- /static/img/human/jill-big-breasts_-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/jill-big-breasts_-head.webp -------------------------------------------------------------------------------- /static/img/human/leonardo-dicaprio_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/leonardo-dicaprio_s-head.webp -------------------------------------------------------------------------------- /static/img/human/long-dong-silver_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/long-dong-silver_s-head.webp -------------------------------------------------------------------------------- /static/img/human/martin-van-buren_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/martin-van-buren_s-head.webp -------------------------------------------------------------------------------- /static/img/human/pamela-anderson_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/pamela-anderson_s-head.webp -------------------------------------------------------------------------------- /static/img/human/richard-m_-nixon_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/richard-m_-nixon_s-head.webp -------------------------------------------------------------------------------- /static/img/human/thomas-jefferson_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/thomas-jefferson_s-head.webp -------------------------------------------------------------------------------- /static/img/human/william-shatner_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/william-shatner_s-head.webp -------------------------------------------------------------------------------- /static/img/robot/bender-bending-rodr_guez.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/bender-bending-rodr_guez.webp -------------------------------------------------------------------------------- /static/img/robot/billy-west-_character_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/billy-west-_character_.webp -------------------------------------------------------------------------------- /static/img/robot/sergeant-feces-processor.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/sergeant-feces-processor.webp -------------------------------------------------------------------------------- /static/img/unknown/147573952589676412927.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/unknown/147573952589676412927.webp -------------------------------------------------------------------------------- /docker-entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Migrations 4 | make migrate 5 | 6 | poetry run python -m futuramaapi -b :"${PORT:-8080}" "$@" 7 | -------------------------------------------------------------------------------- /static/img/alien/mystic-aldermen-of-the-sun.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/alien/mystic-aldermen-of-the-sun.webp -------------------------------------------------------------------------------- /static/img/human/theodore-roosevelt_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/theodore-roosevelt_s-head.webp -------------------------------------------------------------------------------- /static/img/human/william-howard-taft_s-head.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/william-howard-taft_s-head.webp -------------------------------------------------------------------------------- /static/img/robot/john-quincy-adding-machine.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/john-quincy-adding-machine.webp -------------------------------------------------------------------------------- /static/img/human/headless-body-of-spiro-agnew.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/headless-body-of-spiro-agnew.webp -------------------------------------------------------------------------------- /static/img/human/nichelle-nichols-_character_.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/nichelle-nichols-_character_.webp -------------------------------------------------------------------------------- /static/img/monster/giant-unattractive-monster.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/monster/giant-unattractive-monster.webp -------------------------------------------------------------------------------- /static/img/human/hubert-j_-farnsworth_s-girlfriend.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/human/hubert-j_-farnsworth_s-girlfriend.webp -------------------------------------------------------------------------------- /static/img/robot/bender-bending-rodr_guez_s-first-born-son.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/koldakov/futuramaapi/HEAD/static/img/robot/bender-bending-rodr_guez_s-first-born-son.webp -------------------------------------------------------------------------------- /futuramaapi/apps/__init__.py: -------------------------------------------------------------------------------- 1 | from fastapi import FastAPI 2 | 3 | from .fastapi import futurama_api 4 | 5 | app: FastAPI = futurama_api 6 | 7 | __all__ = [ 8 | "app", 9 | ] 10 | -------------------------------------------------------------------------------- /futuramaapi/core/__init__.py: -------------------------------------------------------------------------------- 1 | from ._settings import email_settings, feature_flags, settings 2 | 3 | __all__ = [ 4 | "email_settings", 5 | "feature_flags", 6 | "settings", 7 | ] 8 | -------------------------------------------------------------------------------- /static/css/cookie-banner.css: -------------------------------------------------------------------------------- 1 | #futurama-api-cookie-banner { 2 | position: fixed; 3 | bottom: 0; 4 | left: 0; 5 | width: 100%; 6 | z-index: 999; 7 | border-radius: 0; 8 | display: none; 9 | } 10 | -------------------------------------------------------------------------------- /futuramaapi/__main__.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | from .web_servers import run 4 | 5 | 6 | def _run() -> int: 7 | return run(sys.argv[1:]) 8 | 9 | 10 | if __name__ == "__main__": 11 | sys.exit(_run()) 12 | -------------------------------------------------------------------------------- /robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: /api/ 3 | Disallow: /s/ 4 | Allow: / 5 | 6 | User-agent: Googlebot 7 | Disallow: /api/ 8 | Disallow: /s/ 9 | Allow: / 10 | 11 | User-agent: Yandex 12 | Disallow: /api/ 13 | Disallow: /s/ 14 | Allow: / 15 | -------------------------------------------------------------------------------- /futuramaapi/routers/graphql/dependencies.py: -------------------------------------------------------------------------------- 1 | from fastapi import Depends 2 | 3 | from .context import Context 4 | 5 | 6 | async def get_context( 7 | context: Context = Depends(Context.from_dependency), # noqa: B008 8 | ) -> Context: 9 | return context 10 | -------------------------------------------------------------------------------- /tests/unit/helpers/test_hashers.py: -------------------------------------------------------------------------------- 1 | from futuramaapi.helpers.hashers import hasher 2 | 3 | 4 | class TestHasher: 5 | def test_verify(self): 6 | password: str = "123" # noqa: S105 7 | decoded: str = hasher.encode(password) 8 | 9 | assert hasher.verify(password, decoded) 10 | -------------------------------------------------------------------------------- /futuramaapi/repositories/__init__.py: -------------------------------------------------------------------------------- 1 | from ._base import ( 2 | INT32, 3 | Base, 4 | FilterStatementKwargs, 5 | ModelAlreadyExistsError, 6 | ModelDoesNotExistError, 7 | ) 8 | 9 | __all__ = [ 10 | "INT32", 11 | "Base", 12 | "FilterStatementKwargs", 13 | "ModelAlreadyExistsError", 14 | "ModelDoesNotExistError", 15 | ] 16 | -------------------------------------------------------------------------------- /futuramaapi/routers/graphql/api.py: -------------------------------------------------------------------------------- 1 | import strawberry 2 | from strawberry.fastapi import GraphQLRouter 3 | 4 | from .dependencies import get_context 5 | from .schemas import Query 6 | 7 | schema = strawberry.Schema(Query) 8 | 9 | router = GraphQLRouter( 10 | schema, 11 | path="/graphql", 12 | context_getter=get_context, 13 | include_in_schema=False, 14 | ) 15 | -------------------------------------------------------------------------------- /futuramaapi/utils/_compat.py: -------------------------------------------------------------------------------- 1 | import tomllib 2 | from importlib.metadata import metadata as _metadata 3 | from typing import Any 4 | 5 | __all__ = [ 6 | "config", 7 | "metadata", 8 | ] 9 | 10 | 11 | def _get_config() -> dict[str, Any]: 12 | with open("pyproject.toml", "rb") as f: 13 | return tomllib.load(f) 14 | 15 | 16 | metadata = _metadata("futuramaapi") 17 | config: dict[str, Any] = _get_config() 18 | -------------------------------------------------------------------------------- /futuramaapi/routers/services/_base.py: -------------------------------------------------------------------------------- 1 | from abc import ABC, abstractmethod 2 | from collections.abc import Sequence 3 | from typing import Any 4 | 5 | from futuramaapi.helpers.pydantic import BaseModel 6 | 7 | 8 | class BaseService(BaseModel, ABC): 9 | context: dict[str, Any] | None = None 10 | 11 | @abstractmethod 12 | async def __call__(self, *args, **kwargs) -> BaseModel | Sequence[BaseModel] | None: 13 | pass 14 | -------------------------------------------------------------------------------- /futuramaapi/routers/exceptions.py: -------------------------------------------------------------------------------- 1 | from pydantic import Field 2 | 3 | from futuramaapi.helpers.pydantic import BaseModel 4 | 5 | 6 | class ModelNotFoundError(Exception): ... 7 | 8 | 9 | class ModelExistsError(Exception): ... 10 | 11 | 12 | class UpdateArgsNotDefined(Exception): ... 13 | 14 | 15 | class NotFoundResponse(BaseModel): 16 | detail: str = Field("Not Found") 17 | 18 | 19 | class UnauthorizedResponse(BaseModel): 20 | detail: str = Field("Unauthorized") 21 | -------------------------------------------------------------------------------- /futuramaapi/repositories/migrations/versions/d413d1284339_initial_revision.py: -------------------------------------------------------------------------------- 1 | """Initial revision 2 | 3 | Revision ID: d413d1284339 4 | Revises: 5 | Create Date: 2023-11-25 19:46:49.496715 6 | """ 7 | 8 | from collections.abc import Sequence 9 | 10 | revision: str = "d413d1284339" 11 | down_revision: str | None = None 12 | branch_labels: str | Sequence[str] | None = None 13 | depends_on: str | Sequence[str] | None = None 14 | 15 | 16 | def upgrade() -> None: 17 | pass 18 | 19 | 20 | def downgrade() -> None: 21 | pass 22 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/seasons/schemas.py: -------------------------------------------------------------------------------- 1 | from typing import ClassVar 2 | 3 | from futuramaapi.helpers.pydantic import BaseModel 4 | from futuramaapi.mixins.pydantic import BaseModelDatabaseMixin 5 | from futuramaapi.repositories.models import SeasonModel 6 | from futuramaapi.routers.rest.episodes.schemas import EpisodeBase 7 | 8 | 9 | class Season(BaseModel, BaseModelDatabaseMixin): 10 | model: ClassVar[type[SeasonModel]] = SeasonModel 11 | 12 | class Episode(EpisodeBase): ... 13 | 14 | id: int 15 | episodes: list[Episode] 16 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | SHELL = /bin/bash 2 | PYTHON = python3 3 | 4 | help: # Display this message 5 | @sed -ne '/@sed/!s/# //p' $(MAKEFILE_LIST) 6 | 7 | install-dev: # Install DEV/TEST Environ and dependencies 8 | @echo "Upgrading pip" 9 | @$(PYTHON) -m pip install --upgrade pip 10 | @echo "Installing poetry" 11 | @$(PYTHON) -m pip install poetry 12 | @echo "Installing dependencies" 13 | @$(PYTHON) -m poetry install 14 | 15 | test: # Run tests 16 | @$(PYTHON) -m poetry run $(PYTHON) -m pytest 17 | 18 | migrate: # Migrate 19 | @$(PYTHON) -m poetry run $(PYTHON) -m alembic upgrade head 20 | -------------------------------------------------------------------------------- /futuramaapi/middlewares/cors.py: -------------------------------------------------------------------------------- 1 | from fastapi.middleware.cors import CORSMiddleware as CORSMiddlewareBase 2 | 3 | 4 | class CORSMiddleware(CORSMiddlewareBase): 5 | def is_allowed_origin(self, origin: str) -> bool: 6 | # Starlette restricts to have origin "*" with allow_credentials for ``fastapi.middleware.cors.CORSMiddleware``. 7 | # But for FuturamaAPI it's fine if anyone can access API. 8 | # Not a security issue at all. But if you have any suggestions you are free to create a task here: 9 | # https://github.com/koldakov/futuramaapi/issues. 10 | return True 11 | -------------------------------------------------------------------------------- /futuramaapi/routers/graphql/context.py: -------------------------------------------------------------------------------- 1 | from fastapi import Depends 2 | from sqlalchemy.ext.asyncio.session import AsyncSession 3 | from strawberry.fastapi import BaseContext 4 | 5 | from futuramaapi.repositories.session import get_async_session 6 | 7 | 8 | class Context(BaseContext): 9 | def __init__(self, session: AsyncSession): 10 | self.session: AsyncSession = session 11 | 12 | super().__init__() 13 | 14 | @classmethod 15 | async def from_dependency( 16 | cls, 17 | session: AsyncSession = Depends(get_async_session), # noqa: B008 18 | ): 19 | return cls(session) 20 | -------------------------------------------------------------------------------- /futuramaapi/web_servers/hypercorn.py: -------------------------------------------------------------------------------- 1 | import sys 2 | from typing import TYPE_CHECKING 3 | 4 | from hypercorn.__main__ import main 5 | 6 | if TYPE_CHECKING: 7 | from collections.abc import Sequence 8 | 9 | 10 | class Config: 11 | worker_class = "uvloop" 12 | workers = 2 13 | 14 | 15 | hypercorn_config: Config = Config() 16 | 17 | 18 | def run( 19 | args: list[str] | None, 20 | ) -> int: 21 | argv: Sequence[str] = args if args is not None else sys.argv[1:] 22 | main( 23 | [ 24 | "futuramaapi:app", 25 | "--config=python:futuramaapi.web_servers.hypercorn.hypercorn_config", 26 | *argv, 27 | ] 28 | ) 29 | return 0 30 | -------------------------------------------------------------------------------- /futuramaapi/repositories/migrations/script.py.mako: -------------------------------------------------------------------------------- 1 | """${message} 2 | 3 | Revision ID: ${up_revision} 4 | Revises: ${down_revision | comma,n} 5 | Create Date: ${create_date} 6 | 7 | """ 8 | from typing import Sequence, Union 9 | 10 | from alembic import op 11 | import sqlalchemy as sa 12 | ${imports if imports else ""} 13 | 14 | # revision identifiers, used by Alembic. 15 | revision: str = ${repr(up_revision)} 16 | down_revision: str | None = ${repr(down_revision)} 17 | branch_labels: str | Sequence[str] | None = ${repr(branch_labels)} 18 | depends_on: str | Sequence[str] | None = ${repr(depends_on)} 19 | 20 | 21 | def upgrade() -> None: 22 | ${upgrades if upgrades else "pass"} 23 | 24 | 25 | def downgrade() -> None: 26 | ${downgrades if downgrades else "pass"} 27 | -------------------------------------------------------------------------------- /futuramaapi/middlewares/counter.py: -------------------------------------------------------------------------------- 1 | from starlette.middleware.base import BaseHTTPMiddleware, RequestResponseEndpoint 2 | from starlette.requests import Request 3 | from starlette.responses import Response 4 | 5 | from futuramaapi.repositories.models import RequestsCounterModel 6 | 7 | 8 | def _get_url(request: Request, /) -> str: 9 | # Quick fix 10 | return request.url.__str__().split("?")[0][:64] 11 | 12 | 13 | class APIRequestsCounter(BaseHTTPMiddleware): 14 | async def dispatch( 15 | self, 16 | request: Request, 17 | call_next: RequestResponseEndpoint, 18 | ) -> Response: 19 | if request.url.path.startswith("/api"): 20 | await RequestsCounterModel.count_url(_get_url(request)) 21 | 22 | return await call_next(request) 23 | -------------------------------------------------------------------------------- /static/js/cookie-banner.js: -------------------------------------------------------------------------------- 1 | var FuturamaAPICookieName = "FuturamaAPI_CookieAccepted"; 2 | var cookieBannerId = "futurama-api-cookie-banner" 3 | 4 | function showCookieBanner(){ 5 | let cookieBanner = document.getElementById(cookieBannerId); 6 | cookieBanner.style.display = "block"; 7 | } 8 | 9 | function hideCookieBanner(){ 10 | localStorage.setItem(FuturamaAPICookieName, true); 11 | 12 | let cookieBanner = document.getElementById(cookieBannerId); 13 | cookieBanner.style.display = "none"; 14 | } 15 | 16 | function initializeCookieBanner(){ 17 | if(localStorage.getItem(FuturamaAPICookieName) === null) { 18 | showCookieBanner(); 19 | } 20 | } 21 | 22 | window.onload = initializeCookieBanner(); 23 | window.futuramaapi_hideCookieBanner = hideCookieBanner; 24 | -------------------------------------------------------------------------------- /futuramaapi/repositories/migrations/versions/c03e060df1b8_add_production_code_to_episode.py: -------------------------------------------------------------------------------- 1 | """Add production code to episode 2 | 3 | Revision ID: c03e060df1b8 4 | Revises: 928d4358646c 5 | Create Date: 2023-12-21 20:12:27.108201 6 | """ 7 | 8 | from collections.abc import Sequence 9 | 10 | import sqlalchemy as sa 11 | from alembic import op 12 | 13 | # revision identifiers, used by Alembic. 14 | revision: str = "c03e060df1b8" 15 | down_revision: str | None = "928d4358646c" 16 | branch_labels: str | Sequence[str] | None = None 17 | depends_on: str | Sequence[str] | None = None 18 | 19 | 20 | def upgrade() -> None: 21 | op.add_column( 22 | "episodes", 23 | sa.Column( 24 | "production_code", 25 | sa.VARCHAR(length=8), 26 | nullable=True, 27 | ), 28 | ) 29 | 30 | 31 | def downgrade() -> None: 32 | op.drop_column( 33 | "episodes", 34 | "production_code", 35 | ) 36 | -------------------------------------------------------------------------------- /futuramaapi/repositories/migrations/versions/1b86ee33d1ba_add_broadcast_number_to_episode.py: -------------------------------------------------------------------------------- 1 | """Add broadcast number to episode 2 | 3 | Revision ID: 1b86ee33d1ba 4 | Revises: c03e060df1b8 5 | Create Date: 2023-12-21 21:57:04.032458 6 | """ 7 | 8 | from collections.abc import Sequence 9 | 10 | import sqlalchemy as sa 11 | from alembic import op 12 | 13 | # revision identifiers, used by Alembic. 14 | revision: str = "1b86ee33d1ba" 15 | down_revision: str | None = "c03e060df1b8" 16 | branch_labels: str | Sequence[str] | None = None 17 | depends_on: str | Sequence[str] | None = None 18 | 19 | 20 | def upgrade() -> None: 21 | op.add_column( 22 | "episodes", 23 | sa.Column( 24 | "broadcast_number", 25 | sa.SmallInteger(), 26 | nullable=True, 27 | ), 28 | ) 29 | 30 | 31 | def downgrade() -> None: 32 | op.drop_column( 33 | "episodes", 34 | "broadcast_number", 35 | ) 36 | -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- 1 | name: Deploy to Heroku 2 | 3 | on: 4 | release: 5 | types: 6 | - created 7 | 8 | jobs: 9 | deploy: 10 | runs-on: ubuntu-latest 11 | env: 12 | HEROKU_API_KEY: ${{ secrets.HEROKU_API_KEY }} 13 | HEROKU_APP_NAME: ${{ secrets.HEROKU_APP_NAME }} 14 | 15 | steps: 16 | - name: Checkout code 17 | uses: actions/checkout@v3 18 | 19 | - name: Log in to Heroku Container Registry 20 | run: echo "$HEROKU_API_KEY" | /usr/bin/docker login --username=_ --password-stdin registry.heroku.com 21 | 22 | - name: Build Docker image 23 | run: docker build -t registry.heroku.com/$HEROKU_APP_NAME/web . 24 | 25 | - name: Push Docker image to Heroku 26 | run: docker push registry.heroku.com/$HEROKU_APP_NAME/web 27 | 28 | - name: Install Heroku CLI 29 | run: curl https://cli-assets.heroku.com/install.sh | sh 30 | 31 | - name: Release on Heroku 32 | run: heroku container:release web --app $HEROKU_APP_NAME 33 | -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- 1 | fail_fast: true 2 | 3 | repos: 4 | - repo: https://github.com/pre-commit/pre-commit-hooks 5 | rev: v5.0.0 6 | hooks: 7 | - id: check-added-large-files 8 | args: ["--maxkb=700"] 9 | - id: check-yaml 10 | - id: check-toml 11 | - id: check-json 12 | - id: check-symlinks 13 | 14 | - repo: https://github.com/astral-sh/ruff-pre-commit 15 | rev: v0.9.10 16 | hooks: 17 | - id: ruff 18 | - id: ruff-format 19 | - id: ruff 20 | args: 21 | - --no-fix 22 | stages: 23 | - manual 24 | - id: ruff-format 25 | args: 26 | - --check 27 | stages: 28 | - manual 29 | 30 | - repo: https://github.com/pre-commit/mirrors-mypy 31 | rev: v1.15.0 32 | hooks: 33 | - id: mypy 34 | pass_filenames: false 35 | args: 36 | - --install-types 37 | - --non-interactive 38 | - --check-untyped-defs 39 | - --python-version=3.12 40 | -------------------------------------------------------------------------------- /futuramaapi/routers/services/seasons/list_seasons.py: -------------------------------------------------------------------------------- 1 | from abc import ABC 2 | 3 | from fastapi_pagination import Page 4 | from fastapi_pagination.ext.sqlalchemy import paginate 5 | from sqlalchemy import Select, select 6 | from sqlalchemy.orm import selectinload 7 | 8 | from futuramaapi.repositories.models import SeasonModel 9 | from futuramaapi.repositories.session import session_manager 10 | from futuramaapi.routers.services._base import BaseService 11 | from futuramaapi.routers.services.seasons.get_season import GetSeasonResponse 12 | 13 | 14 | class ListSeasonResponse(GetSeasonResponse): 15 | pass 16 | 17 | 18 | class ListSeasonsService(BaseService, ABC): 19 | @property 20 | def statement(self) -> Select: 21 | return select(SeasonModel).filter().options(selectinload(SeasonModel.episodes)) 22 | 23 | async def __call__(self, *args, **kwargs) -> Page[ListSeasonResponse]: 24 | async with session_manager.session() as session: 25 | return await paginate( 26 | session, 27 | self.statement, 28 | ) 29 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/characters/schemas.py: -------------------------------------------------------------------------------- 1 | from datetime import datetime 2 | from typing import ClassVar 3 | 4 | from fastapi_storages import StorageImage 5 | from pydantic import HttpUrl, field_validator 6 | 7 | from futuramaapi.core import settings 8 | from futuramaapi.helpers.pydantic import BaseModel 9 | from futuramaapi.mixins.pydantic import BaseModelDatabaseMixin 10 | from futuramaapi.repositories.models import CharacterModel 11 | 12 | 13 | class Character(BaseModel, BaseModelDatabaseMixin): 14 | model: ClassVar[type[CharacterModel]] = CharacterModel 15 | 16 | id: int 17 | name: str 18 | gender: CharacterModel.CharacterGender 19 | status: CharacterModel.CharacterStatus 20 | species: CharacterModel.CharacterSpecies 21 | created_at: datetime 22 | image: HttpUrl | None = None 23 | 24 | @field_validator("image", mode="before") 25 | @classmethod 26 | def make_url(cls, value: StorageImage | str | None, /) -> HttpUrl | None: 27 | if value is None: 28 | return None 29 | if isinstance(value, StorageImage): 30 | return settings.build_url(path=value._name) 31 | return HttpUrl(value) 32 | -------------------------------------------------------------------------------- /futuramaapi/routers/rest/episodes/schemas.py: -------------------------------------------------------------------------------- 1 | from datetime import date, datetime 2 | from typing import ClassVar 3 | 4 | from pydantic import Field, computed_field 5 | 6 | from futuramaapi.helpers.pydantic import BaseModel 7 | from futuramaapi.mixins.pydantic import BaseModelDatabaseMixin 8 | from futuramaapi.repositories.models import EpisodeModel 9 | 10 | 11 | class EpisodeBase(BaseModel, BaseModelDatabaseMixin): 12 | model: ClassVar[type[EpisodeModel]] = EpisodeModel 13 | 14 | id: int 15 | name: str 16 | broadcast_number: int = Field(alias="number") 17 | production_code: str = Field( 18 | examples=[ 19 | "1ACV01", 20 | ], 21 | ) 22 | 23 | 24 | class Episode(EpisodeBase): 25 | class Season(BaseModel): 26 | id: int 27 | 28 | air_date: date | None 29 | duration: int | None 30 | created_at: datetime 31 | season: Season 32 | 33 | @computed_field( # type: ignore[misc] 34 | examples=[ 35 | "S01E01", 36 | ], 37 | return_type=str, 38 | ) 39 | @property 40 | def broadcast_code(self) -> str: 41 | return f"S{self.season.id:02d}E{self.broadcast_number:02d}" 42 | -------------------------------------------------------------------------------- /templates/auth.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% set active_page = "user_auth" %} 4 | 5 | {% block titile %}Password Reset{% endblock %} | Futurama API 6 | 7 | {% block main_info %}{% endblock %} 8 | 9 | {% block main_content %} 10 |
13 | Dear {{ user.name }} {{ user.surname }}, you requested password change. 14 | You have 15 minutes to reset the password. 15 |
16 | 61 |
33 | Gender: {{ character.gender.value|capitalize }}.
34 |
35 | Status: {{ character.status.value|capitalize }}.
36 |