{"id":24380772,"url":"https://github.com/lzinga/screeno","last_synced_at":"2026-04-21T18:02:03.009Z","repository":{"id":96438352,"uuid":"62284091","full_name":"lzinga/Screeno","owner":"lzinga","description":null,"archived":false,"fork":false,"pushed_at":"2016-06-30T06:37:23.000Z","size":332,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-19T08:33:10.482Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lzinga.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-06-30T06:09:00.000Z","updated_at":"2016-06-30T06:09:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"ce6610b3-beed-4282-bcbc-8e296999a8e0","html_url":"https://github.com/lzinga/Screeno","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lzinga%2FScreeno","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lzinga%2FScreeno/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lzinga%2FScreeno/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lzinga%2FScreeno/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lzinga","download_url":"https://codeload.github.com/lzinga/Screeno/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243240917,"owners_count":20259493,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-19T08:29:03.045Z","updated_at":"2025-12-11T18:19:26.748Z","avatar_url":"https://github.com/lzinga.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Screeno\nSomething I made quickly to see a timelapse of my css changes and over all website changes.\n\n#Usage\nIn your global.asax or wherever you do initalization of your web project place the following:\n````csharp\nprotected void Application_Start()\n{\n    AreaRegistration.RegisterAllAreas();\n    RouteConfig.RegisterRoutes(RouteTable.Routes);\n#if DEBUG\n    Screeno.Screeno screen = new Screeno.Screeno(@\"C:\\Temp\\ScreenoImages\");\n#endif\n}\n````\nThe ````#if Debug```` will make sure it is only ran in debug mode and images aren't being created on your production server.\n\nThen all you have to do is add a ````[TakeScreen]```` attribute over any View inside a controller like in the example:\n````csharp\npublic class HomeController : Controller\n{\n  [TakeScreen]\n  public ActionResult Index()\n  {\n      return View();\n  }\n}\n````\n\n# Known Issues\n1. It currently takes a picture of the currently active window.\n2. When you do a compile the page isn't fully loaded before it takes the screenshot. So you will end up with a blank looking one.\n\n# ToDos\n1. Make it so it grabs the proper window on compile instead of the active window.\n2. Since it will take an image every refresh (with what ever buffer timer you put in). You might end up with pictures that are\nduplicates are just 1 minor thing unchanged. Need to add some checker to not have tons of the same picture. Which should be relativlity\nsimple by getting the percentage of how many pixels were changed in the image, and only saving images within a threshold. (This threshold\nshould be set in the settings for Screeno).\n3. Instead of passing all arguments into the constructor, make a ScreenoOptions class to accept all options and then let Screeno\nclass accept that.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flzinga%2Fscreeno","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flzinga%2Fscreeno","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flzinga%2Fscreeno/lists"}