alphagov / forms-runner Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
What analytics? Anne to confirm here https://trello.com/c/d9eXIVLO/438-ensure-minimum-user-insight-events-are-being-tracked
Change form pages to use HTML forms to display and receive data.
What about shared browsers in a library?
Is this a pentest recommendation?
https://www.w3.org/TR/WCAG21/#timeouts
https://www.w3.org/WAI/WCAG21/Understanding/timeouts.html
https://www.w3.org/TR/WCAG21/#timing-adjustable
https://design.tax.service.gov.uk/hmrc-design-patterns/service-timeout/
we use redis
❯ ab -n 10000 -c 100 https://submit.staging.forms.service.gov.uk/preview-form/2/apply-for-a-pet-license/2
This is ApacheBench, Version 2.3 <$Revision: 1879490 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking submit.staging.forms.service.gov.uk (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software:
Server Hostname: submit.staging.forms.service.gov.uk
Server Port: 443
SSL/TLS Protocol: TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256,2048,128
Server Temp Key: X25519 253 bits
TLS Server Name: submit.staging.forms.service.gov.uk
Concurrency Level: 100
Time taken for tests: 119.771 seconds
Complete requests: 10000
Failed requests: 6096
(Connect: 0, Receive: 0, Length: 6096, Exceptions: 0)
Non-2xx responses: 6096
Total transferred: 92587914 bytes
HTML transferred: 81758564 bytes
Requests per second: 83.49 [#/sec] (mean)
Time per request: 1197.714 [ms] (mean)
Time per request: 11.977 [ms] (mean, across all concurrent requests)
Transfer rate: 754.92 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 9 86 69.8 75 339
Processing: 2 1095 1310.7 75 3604
Waiting: 2 1090 1314.4 62 3604
Total: 13 1181 1254.4 197 3617
Percentage of the requests served within a certain time (ms)
50% 197
66% 2421
75% 2574
80% 2674
90% 2927
95% 3054
98% 3179
99% 3358
100% 3617 (longest request)
``
Currently the govuk-frontend assets (most noticeably the GDS Transport font) aren't being compiled by the asset build. This means that the fonts and assets will load correctly on a local machine, but return 404s on the dev server.
This should include anything we're likely to need in both forms-admin and forms-runner, but not anything more specific. We already have a default Rollup build but this may also need a but of configuring.
This should include:
govuk-frontend
We want a github action to run against every pull request, this should include:
We want to use sentry for exception tracking, we will need to set up a sentry account and ensure the service can send exceptions correctly
GDS has a standardised README format. We should use this in our repositories.
This should include:
404 for page not found
500 for unexpected errors
Service unavailable (in case we need to take the service down temporarily)
Notify error (special case of the 500 error with some extra text about the submission failing)
cache expiry set to 72000s (20h)?
do we need to tell the user the expiry?
We need to prevent search indexing so that users don't accidentally access the form pages directly - see Ensure users start their journey on GOV.UK in the Service Manual. We can either do this with a meta tag in the view or by adding the X-Robots-Tag HTTP header.
We want this to apply to all pages on the runner. Adding the header in AppliccationController will probably make require less maintenance in the long run, as we are marginally more likely to add new layouts than we are to add new controllers that don't inherit from this one.
forms-runner
is returning a 500
http response code in situations when a 404
would be expected, e.g.
{RUNNER_BASE}/this-should-return-a-404
To ensure the design system has been set up correctly, we want to add the design system to the existing layout for the page
Trello card: https://trello.com/c/d9eXIVLO/438-ensure-minimum-user-insight-events-are-being-tracked-in-logs
Add entries to the logs for some core user journey events. To start, log when a user:
The logged information will be:
Trello backlink https://trello.com/c/xewAy5s7/123-spike-allow-user-to-create-a-form-with-a-title-that-sends-email-to-govuk-notify
End User can press a button that sends an email using Notify, including the title, text input, and submission time
As a result of alphagov/forms#38 discussion
We would like to automatically deploy to the dev environment on merge into main
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.