{"company":{"id":4430493,"name":"Fromart","domain":"fromart.com","url":"https://alion.io/company/fromart"},"answer":"Fromart builds mostly with PHP, JavaScript, TypeScript, SQL. Its stack also includes Redis, Playwright, React.js, Figma. PHP is named in 8 of the 21 job postings Fromart published in the last 12 months (38%). Counted by Alion from the job postings of Fromart, updated Oct 14, 2026.","window_days":365,"postings_analysed":21,"open_postings":21,"technologies_in_use":80,"modernity_score":67,"ai_adoption":false,"technologies":[{"name":"PHP","layer":"languages","postings":8,"share":0.381,"required":2,"open_postings":8,"first_seen":"2026-05-14","last_seen":"2026-10-12","median_stated_pay_usd":null},{"name":"WordPress","layer":"tools","postings":6,"share":0.2857,"required":5,"open_postings":6,"first_seen":"2026-05-14","last_seen":"2026-10-12","median_stated_pay_usd":null},{"name":"CI/CD","layer":"practices","postings":5,"share":0.2381,"required":5,"open_postings":5,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Docker","layer":"tools","postings":5,"share":0.2381,"required":2,"open_postings":5,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"JavaScript","layer":"languages","postings":5,"share":0.2381,"required":2,"open_postings":5,"first_seen":"2026-05-14","last_seen":"2026-10-12","median_stated_pay_usd":null},{"name":"Adobe Photoshop","layer":"tools","postings":4,"share":0.1905,"required":4,"open_postings":4,"first_seen":"2026-02-04","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"Playwright","layer":"frameworks","postings":4,"share":0.1905,"required":3,"open_postings":4,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Redis","layer":"data","postings":4,"share":0.1905,"required":2,"open_postings":4,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"React.js","layer":"frameworks","postings":3,"share":0.1429,"required":3,"open_postings":3,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Rest API","layer":"tools","postings":3,"share":0.1429,"required":3,"open_postings":3,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Claude Code","layer":"tools","postings":3,"share":0.1429,"required":2,"open_postings":3,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Copilot","layer":"tools","postings":3,"share":0.1429,"required":2,"open_postings":3,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Cursor","layer":"tools","postings":3,"share":0.1429,"required":2,"open_postings":3,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Cypress","layer":"frameworks","postings":3,"share":0.1429,"required":2,"open_postings":3,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Git","layer":"tools","postings":3,"share":0.1429,"required":2,"open_postings":3,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Tailwind CSS","layer":"frameworks","postings":3,"share":0.1429,"required":2,"open_postings":3,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"JMeter","layer":"tools","postings":3,"share":0.1429,"required":1,"open_postings":3,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Lighthouse","layer":"tools","postings":3,"share":0.1429,"required":1,"open_postings":3,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"k6","layer":"tools","postings":3,"share":0.1429,"required":1,"open_postings":3,"first_seen":"2026-05-14","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"A/B Testing","layer":"practices","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-09-28","last_seen":"2026-10-05","median_stated_pay_usd":null},{"name":"Adobe After Effects","layer":"tools","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-07-09","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"DaVinci Resolve","layer":"tools","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-07-09","last_seen":"2026-08-07","median_stated_pay_usd":null},{"name":"Figma","layer":"cloud","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-03-04","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Jest","layer":"frameworks","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"TypeScript","layer":"languages","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Vitest","layer":"frameworks","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Windows","layer":"cloud","postings":2,"share":0.0952,"required":2,"open_postings":2,"first_seen":"2026-07-21","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"AWS","layer":"cloud","postings":2,"share":0.0952,"required":0,"open_postings":2,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Canva","layer":"tools","postings":2,"share":0.0952,"required":0,"open_postings":2,"first_seen":"2026-09-28","last_seen":"2026-10-07","median_stated_pay_usd":null},{"name":"Next.js","layer":"frameworks","postings":2,"share":0.0952,"required":0,"open_postings":2,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"PHPStan","layer":"tools","postings":2,"share":0.0952,"required":0,"open_postings":2,"first_seen":"2026-08-25","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Adobe InDesign","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-05-14","last_seen":"2026-05-14","median_stated_pay_usd":null},{"name":"Adobe XD","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-03-04","last_seen":"2026-03-04","median_stated_pay_usd":null},{"name":"Ansible","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-03","last_seen":"2026-08-03","median_stated_pay_usd":null},{"name":"CSS Modules","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Composer","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"DHCP","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"DNS","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Eloquent","layer":"frameworks","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"GraphQL","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Insomnia","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-05-14","last_seen":"2026-05-14","median_stated_pay_usd":null},{"name":"Laravel","layer":"frameworks","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Linux","layer":"cloud","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Microsoft Entra ID","layer":"cloud","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Microsoft Excel","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"MySQL","layer":"data","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Pest","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"PostCSS","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"PostgreSQL","layer":"data","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Postman","layer":"cloud","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-05-14","last_seen":"2026-05-14","median_stated_pay_usd":null},{"name":"RabbitMQ","layer":"cloud","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Redux","layer":"frameworks","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"SQL","layer":"languages","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Sass","layer":"languages","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"State Management","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"TCP/IP","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Terraform","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-03","last_seen":"2026-08-03","median_stated_pay_usd":null},{"name":"Tokenization","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-02-05","last_seen":"2026-02-05","median_stated_pay_usd":null},{"name":"VPN","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Vite","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Vue.js","layer":"frameworks","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Webpack","layer":"tools","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Wi-Fi","layer":"practices","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Windows Server","layer":"cloud","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"WooCommerce","layer":"frameworks","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-10-05","last_seen":"2026-10-05","median_stated_pay_usd":null},{"name":"Zustand","layer":"frameworks","postings":1,"share":0.0476,"required":1,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Amazon S3","layer":"cloud","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Bash","layer":"languages","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Cloudflare","layer":"cloud","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Hyper-V","layer":"tools","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Inertia.js","layer":"frameworks","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Livewire","layer":"frameworks","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"PHPUnit","layer":"tools","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"PowerShell","layer":"languages","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Proxmox VE","layer":"tools","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Python","layer":"languages","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Sentry","layer":"cloud","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"Storybook","layer":"tools","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"VMWare","layer":"cloud","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-09-29","last_seen":"2026-09-29","median_stated_pay_usd":null},{"name":"WebSockets","layer":"tools","postings":1,"share":0.0476,"required":0,"open_postings":1,"first_seen":"2026-08-25","last_seen":"2026-08-25","median_stated_pay_usd":null}],"own_products":[],"changes":{"first_appeared":[{"name":"A/B Testing","first_seen":"2026-09-28"},{"name":"Canva","first_seen":"2026-09-28"},{"name":"React.js","first_seen":"2026-08-25"},{"name":"Claude Code","first_seen":"2026-08-25"},{"name":"Copilot","first_seen":"2026-08-25"},{"name":"Cursor","first_seen":"2026-08-25"},{"name":"Git","first_seen":"2026-08-25"},{"name":"Tailwind CSS","first_seen":"2026-08-25"}],"rising":[],"falling":[],"not_seen_180d":[]},"similar_stacks":[{"name":"Hostinger","url":"https://alion.io/company/hostinger/technologies","shared_technologies":47},{"name":"About You","url":"https://alion.io/company/aboutyou/technologies","shared_technologies":53},{"name":"TransPerfect Games","url":"https://alion.io/company/transperfectgames/technologies","shared_technologies":58},{"name":"TGS","url":"https://alion.io/company/tgs-com/technologies","shared_technologies":49},{"name":"Uvation","url":"https://alion.io/company/uvation/technologies","shared_technologies":48},{"name":"iKnowHow","url":"https://alion.io/company/iknowhow-s-a/technologies","shared_technologies":48},{"name":"Burj Line Builders","url":"https://alion.io/company/burjlinebuilders/technologies","shared_technologies":46},{"name":"Robusta Technology Group","url":"https://alion.io/company/robustagroup/technologies","shared_technologies":47}],"html_url":"https://alion.io/company/fromart/technologies","json_url":"https://alion.io/company/fromart/technologies.json","license":"CC BY-SA 4.0","meta":{"source":"Alion","built_at":"2026-10-14T07:42:51Z","generated_at":"2026-10-14T07:43:24Z"}}