Om sajten
Vi som gjort kinesiskarecept.se heter Yang och Gabriel. Jag (Yang) kommer från Kina men bor sedan flera år i Stockholm. Här finns många kinesiska restauranger men jag saknar vanlig, kinesisk husmankost. När jag äter sådan mat känns det som att vara hemma i Kina igen!
Recepten på den här sajten är mestadels från norra Kina eftersom det är därifrån jag kommer. Det innebär lite mer sälta än den söta mat man finner i södra Kina och Thailand. Vissa rätter är heta men inte jätteheta som mat från Sichuan. Men öka gärna mängden chili och sichuanpeppar i recepten om du känner för det!
Kinesisk mat är nästan helt laktosfri och glutenfri eftersom den knappt innehåller några mejeriprodukter och de flesta recept är fria från mjöl. Är du laktosintollerant eller glutenallergisk så bör du definitivt testa de kinesiska recepten här!
Recepten på sajten räcker till olika många personer vilket anges i recepten. Antalet utgår från att du bara lagar ett recept och, i nästan samtliga fall, serverar ris till. Du kan enkelt ändra antalet på varje receptsida men om du vill laga mat till fler än receptet är skrivet för så rekommenderar jag starkt att du gör som i Kina och lagar flera rätter istället. Det flesta måltider består av två rätter, en kötträtt och en grönsaksrätt som serveras med ris.
Vill du veta mer om kinesisk matkultur så rekommenderar vi den kinesiska TV-serien (med engelskt tal) A bite of China.
Vill du komma i kontakt med oss så mejla: info@kinesiskarecept.se, följ oss på Twitter: @KinesiskaRecept eller gilla oss på Facebook: https://www.facebook.com/kinesiskarecept!
Teknik
Eftersom vi båda jobbar som webbutvecklare har vi programmerat sajten själva från grunden. Dels för att passa våra specifika behov och dels för att det är kul! Vi vill göra en enkel och avskalad receptsajt. En som fungerar bra på mobila enheter och som laddar snabbt. Dessutom vill vi använda teknik som är kul och som underlättar förändringar.
Sajten är gjord i node.js med Express som webbramverk och Pug som mallspråk. Bra prestanda kräver minimering och sammanslagning av Javascript och CSS vilket görs med Grunt. Bilderna är komprimerade med JPEGmini och ImageOptim.
Recept har inte så enkel struktur som man först kan tro. Det kan finnas alternativa ingredienser, vissa recept är uppdelade i komponenter (dressing, tillbehör, deg och fyllning etc) och ingrediensmängder ska kunna räknas om med mera. För att hålla datamodellen för recept flexibel använder sajten ingen traditionell SQL-databas utan recepten är incheckade med koden som vanliga JSON-dokument. Det har gjort det möjligt att prototypa fram en datamodell och det är enkelt att successivt införa nya finesser.
Att använda incheckade dokument fungerar ungefär som en dokumentdatabas men med färre rörliga delar och utan körtidsberoenden. Alla recept läses in i minnet vid uppstart, något som kanske inte skulle passa en större sajt, men som är väldigt simpelt och snabbt vid mindre datamängder.
Koden versionshanteras med Git på Github (gratis
privata källkodsarkiv!) och den driftas på Heroku (gratis drift i molnet!)
vilket gör driftsättningar löjligt enkla. En driftsättning är bara en git push
bort :)
Det är facinerande vad som går att åstadkomma genom att använda (gratis) molntjänster och öppen källkod!