-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathguides.html
More file actions
843 lines (768 loc) · 61.8 KB
/
guides.html
File metadata and controls
843 lines (768 loc) · 61.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-Q04BXSJR1J"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-Q04BXSJR1J');
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>NHS Wales Solutions Exchange - Guides</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<link rel="stylesheet" href="css/style.css">
<style>
.featured-card {
border: 2px solid #ffc107 !important;
position: relative;
}
.featured-card::before {
content: '★ FEATURED';
position: absolute;
top: 10px;
right: 10px;
background: #ffc107;
color: #000;
padding: 2px 8px;
border-radius: 4px;
font-size: 0.7rem;
font-weight: bold;
z-index: 10;
}
</style>
</head>
<body>
<!-- Navigation -->
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container">
<a class="navbar-brand" href="index.html">
<img src="assets/img/171259-nhs-logo-blue.png" alt="NHS Wales Logo" style="height: 40px;">
<span class="ms-2">GitHub GIG Cymru: Solutions Exchange</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item"><a class="nav-link" href="index.html">Home</a></li>
<li class="nav-item"><a class="nav-link" href="solutions.html">Solutions Exchange</a></li>
<li class="nav-item"><a class="nav-link" href="service-metrics.html">Service Metrics</a></li>
<li class="nav-item"><a class="nav-link active" href="guides.html">Guides</a></li>
<li class="nav-item"><a class="nav-link btn btn-primary text-white ms-2 px-3" href="guides.html#signup">Sign Up</a></li>
</ul>
</div>
</div>
</nav>
<!-- Page Header -->
<header class="page-header bg-light py-5">
<div class="container">
<div class="row align-items-center">
<div class="col-lg-8">
<h1 class="display-5 fw-bold text-primary">
<i class="fas fa-book-open me-3"></i>Guides & Documentation
</h1>
<p class="lead">Comprehensive guides to help you navigate, contribute to, and make the most of the NHS Wales Solutions Exchange.</p>
</div>
<div class="col-lg-4 text-end">
<i class="fas fa-handshake text-primary" style="font-size: 4rem; opacity: 0.3;"></i>
</div>
</div>
</div>
</header>
<!-- Guides Section -->
<section id="guides" class="py-5">
<div class="container">
<div class="row">
<div class="col-lg-10 mx-auto">
<div class="accordion" id="guidesAccordion">
<!-- Join the Collaboration Movement -->
<div class="accordion-item">
<h2 class="accordion-header" id="signupHeading">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#signup" aria-expanded="false" aria-controls="signup">
<i class="fas fa-user-plus me-2"></i>Join the NHS Wales Collaboration Movement
</button>
</h2>
<div id="signup" class="accordion-collapse collapse" aria-labelledby="signupHeading" data-bs-parent="#guidesAccordion">
<div class="accordion-body">
<p>Get involved with the GitHub GIG Cymru collaboration movement and start contributing to innovative healthcare solutions across Wales.</p>
<h5>Who Can Join?</h5>
<div class="alert alert-warning mb-3">
<strong>Access Notice:</strong> Only users who are part of NHS Wales can have access to internal repositories and be members of GitHub GIG Cymru. Access is not available to external users.
</div>
<ul>
<li><strong>NHS Wales Staff:</strong> Employees of NHS Wales organizations and health boards (only these users can access internal repositories and join GitHub GIG Cymru)</li>
</ul>
<h5>What You'll Get Access To</h5>
<ul>
<li>Access to NHS Wales GitHub organizations and repositories</li>
<li>Collaboration opportunities with healthcare technology teams</li>
<li>Training and development resources</li>
<li>Community</li>
<li>Early access to new tools and platforms</li>
<li>Networking opportunities with like-minded professionals</li>
</ul>
<h5>Prerequisites</h5>
<ul>
<li>Valid NHS Wales email address </li>
<li>GitHub account (free account is sufficient)</li>
<li>Basic understanding of version control or willingness to learn</li>
<li>Commitment to collaboration and knowledge sharing</li>
</ul>
<h5>How to Join</h5>
<p>Follow these steps to become part of the GitHub GIG Cymru collaboration movement:</p>
<h6>Step 1: Prepare Your GitHub Account</h6>
<ol>
<li>Create a GitHub account at <a href="https://github.com" target="_blank" class="text-primary">github.com</a> if you don't have one</li>
<li>Add your NHS Wales email to your GitHub account</li>
<li>Complete your GitHub profile with your name and professional information</li>
<li>Enable two-factor authentication for security</li>
</ol>
<h6>Step 2: Request Access</h6>
<p>To request access, raise a ticket with your local IT help desk. Your request will be escalated to the national IT service desk for triage and access setup. Please provide:</p>
<ul>
<li>Your GitHub username</li>
<li>Your NHS Wales email address</li>
<li>Your organization within NHS Wales</li>
</ul>
<h6>Step 3: Wait for Action</h6>
<p>Our team will review your application and:</p>
<ul>
<li>Verify your NHS Wales affiliation</li>
<li>Send you an invitation to join relevant GitHub organizations</li>
<li>Provide access to community resources and documentation</li>
</ul>
<h5>What to Include in Your Email</h5>
<p>When contacting us, please include:</p>
<ul>
<li><strong>Subject Line:</strong> "GitHub GIG Cymru Application - [Your Name]"</li>
<li><strong>Full Name:</strong> Your professional name</li>
<li><strong>GitHub Username:</strong> Your GitHub account username</li>
<li><strong>Organisation:</strong> Your NHS Wales organization or health board</li>
</ul>
<h5>Resources for New Members</h5>
<ul>
<li><strong>GitHub Basics:</strong> <a href="https://docs.github.com/en/get-started" target="_blank" class="text-primary">GitHub's official getting started guide</a></li>
<li><strong>Git Tutorial:</strong> <a href="https://git-scm.com/docs/gittutorial" target="_blank" class="text-primary">Official Git tutorial</a></li>
<li><strong>Open Source Guide:</strong> <a href="https://opensource.guide/" target="_blank" class="text-primary">How to contribute to open source</a></li>
<li><strong>GitHub GIG Cymru Wiki:</strong> <a href="https://github.com/GIGCymru/GitHub-GIG-Cymru/wiki" target="_blank" class="text-primary">Community documentation and guidelines</a></li>
</ul>
<div class="text-center mt-4">
<h5>Ready to Join?</h5>
<p class="lead">Start your journey with the NHS Wales developer community today.</p>
<div class="row justify-content-center">
<div class="col-md-8">
<div class="row">
<div class="col-md-6 mb-3">
<a href="mailto:it.servicedesk@wales.nhs.uk?subject=GitHub%20GIG%20Cymru%20Application" class="btn btn-success btn-lg w-100">
<i class="fas fa-envelope me-2"></i>Send Application Email
</a>
</div>
<div class="col-md-6 mb-3">
<a href="https://github.com/GIGCymru" target="_blank" class="btn btn-outline-primary btn-lg w-100">
<i class="fab fa-github me-2"></i>Visit Our GitHub
</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- GitHub GIG Cymru Service Overview & FAQ -->
<div class="accordion-item">
<h2 class="accordion-header" id="gigCymruOverviewHeading">
<button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#gigCymruOverview" aria-expanded="true" aria-controls="gigCymruOverview">
<i class="fas fa-info-circle me-2"></i>GitHub GIG Cymru: Service Overview & FAQ
</button>
</h2>
<div id="gigCymruOverview" class="accordion-collapse collapse show" aria-labelledby="gigCymruOverviewHeading" data-bs-parent="#guidesAccordion">
<div class="accordion-body">
<h5>About GitHub GIG Cymru</h5>
<p>GitHub GIG Cymru is a managed, version-controlled code collaboration platform for NHS Wales, supporting open-source and reusable code, and enabling cross-organizational collaboration for analytics and development projects.</p>
<p>Please see the <a href="https://github.com/GIGCymru/GitHub-GIG-Cymru-Starter-Guide" target="_blank">GitHub GIG Cymru starter guide</a>.</p>
<div class="alert alert-warning mt-3 mb-3">
<strong>Access Notice:</strong> Only users who are part of NHS Wales can have access to internal repositories and be members of GitHub GIG Cymru. Access is not available to external users.
</div>
<h5>Frequently Asked Questions</h5>
<ul>
<li><strong>Who can use it?</strong> Only users who are part of NHS Wales organizations can access internal repositories and join GitHub GIG Cymru.</li>
<li><strong>How do I get access?</strong> Raise a ticket with your local IT help desk. Your request will be escalated to the national IT service desk for triage and access setup.</li>
<li><strong>How do I get Codespaces or Co-Pilot?</strong> These require additional funding. Contact the service for a cost estimate and access process.</li>
<li><strong>What training is available?</strong> Access <a href="https://github.com/GIGCymru/Guides" target="_blank">GitHub Help Documentation</a>, the <a href="https://github.com/GIGCymru/" target="_blank">GIG Cymru Documentation</a>, and community forums.</li>
<li><strong>How do I share code?</strong> Create a repository in your organization's GitHub space, set it to Internal, or invite collaborators directly.</li>
<li><strong>How do I follow best practice?</strong> Use code reviews, pull requests, and follow your organization's coding standards. Document shared standards in your repos.</li>
<li><strong>Where do I go for help?</strong> Use the <a href="https://docs.github.com/en/get-started" target="_blank">GitHub Help Docs</a>, contact the Advanced Analytics Team, or join community forums.</li>
<li><strong>How do I suggest improvements?</strong> Raise issues in relevant repos, join forums, or contact the NDR Advanced Analytics Team.</li>
<li><strong>What features are included?</strong> Private repos, team management, code review, project management, GitHub Actions, security, analytics, Co-Pilot, and Codespaces (some features may require extra cost).</li>
<li><strong>How is security managed?</strong> GitHub Enterprise provides encryption, access controls, and monitoring. All users are synced with NHS Wales Active Directory. Follow NHS Wales data protection policies.</li>
<li><strong>What are DHCW roles?</strong> The DHCW NDR Advanced Analytics Team manages the service, users, organizations, and provides support and guidance.</li>
<li><strong>Strategic goals supported:</strong> Digital transformation, high-quality digital services, cross-organizational collaboration, innovation, and trusted IT service management.</li>
<li><strong>What projects are supported?</strong> Cross-organization, open source, big data, research, proof of concept, hackathons, and infrastructure projects.</li>
</ul>
<h5>Resources & Support</h5>
<ul>
<li><a href="https://github.com/GIGCymru/GitHub-GIG-Cymru/wiki" target="_blank">GIG Cymru Wiki</a></li>
<li><a href="https://github.com/GIGCymru/Guides" target="_blank">Guides & Documentation</a></li>
<li><a href="https://github.com/GIGCymru/GitHub-GIG-Cymru-FAQ" target="_blank">FAQ Repository</a></li>
</ul>
<p class="mb-0"><strong>Contact:</strong> For support, contact your local IT desk who will direct you to the DHCW NDR GitHub GIG Cymru Team.</p>
</div>
</div>
</div>
<!-- Getting Started Guide -->
<div class="accordion-item">
<h2 class="accordion-header" id="gettingStartedHeading">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#gettingStarted" aria-expanded="false" aria-controls="gettingStarted">
<i class="fas fa-rocket me-2"></i>Getting Started with the NHS Wales Solutions Exchange
</button>
</h2>
<div id="gettingStarted" class="accordion-collapse collapse" aria-labelledby="gettingStartedHeading" data-bs-parent="#guidesAccordion">
<div class="accordion-body">
<p>Welcome to the NHS Wales Solutions Exchange! This guide will help you navigate and make the most of our platform.</p>
<h5>What is the Solutions Exchange?</h5>
<p>The Solutions Exchange is a central hub for discovering and sharing innovative healthcare solutions developed across NHS Wales organizations. It showcases open-source projects, tools, and collaborative initiatives that are improving patient care and operational efficiency across Wales.</p>
<h5>How to Browse Solutions</h5>
<ul>
<li>Use the <a href="solutions.html" class="text-primary">Browse Solutions</a> page to explore all available projects</li>
<li>Filter by organization to see solutions from specific NHS Wales bodies</li>
<li>Filter by programming language to find projects using your preferred technology</li>
<li>Use topic tags to discover solutions in specific healthcare domains</li>
<li>Use the search function to find specific solutions by name or description</li>
<li>Sort by update date, stars, or name to find what you need quickly</li>
</ul>
<h5>Understanding Solution Information</h5>
<p>Each solution card displays:</p>
<ul>
<li><strong>Name and Description:</strong> What the solution does</li>
<li><strong>Organization:</strong> Which NHS Wales body developed it</li>
<li><strong>Programming Language:</strong> Technical stack used</li>
<li><strong>Status:</strong> Public (open source) or Internal (NHS Wales only)</li>
<li><strong>Topics:</strong> Healthcare domains and technology categories</li>
<li><strong>Community Metrics:</strong> Stars and forks from GitHub</li>
<li><strong>Last Updated:</strong> How recently the project was maintained</li>
</ul>
</div>
</div>
</div>
<!-- Contributing Guide -->
<div class="accordion-item">
<h2 class="accordion-header" id="contributingHeading">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#contributing" aria-expanded="false" aria-controls="contributing">
<i class="fas fa-hands-helping me-2"></i>How to Contribute Your Solutions
</button>
</h2>
<div id="contributing" class="accordion-collapse collapse" aria-labelledby="contributingHeading" data-bs-parent="#guidesAccordion">
<div class="accordion-body">
<p>Share your innovative healthcare solutions with the NHS Wales community and help others benefit from your work.</p>
<h5>Step 1: Prepare Your Repository</h5>
<ul>
<li><strong>Create a Repository:</strong> Within your local Github organisation: <a href="https://github.com/GIGCymru" target="_blank">For a full list see here</a></li>
<li><strong>Create a Clear README.md:</strong> Explain what your solution does, how to install it, and how to use it</li>
<li><strong>Add Relevant Topic Tags:</strong> Help others discover your solution with appropriate healthcare and technology tags</li>
<li><strong>Include Documentation:</strong> Provide installation instructions, API documentation, and user guides</li>
<li><strong>Add a License File:</strong> Clarify usage rights (MIT, Apache 2.0, or GPL are common choices)</li>
<li><strong>Include Screenshots/Demos:</strong> Show your solution in action when possible</li>
</ul>
<h5>Step 2: Get Your Solution Included</h5>
<p>To get your solution included in the Solutions Exchange:</p>
<ol>
<li>Ensure your repository is hosted on GitHub under an NHS Wales organization</li>
<li>Contact the DHCW NDR GitHub GIG Cymru Team to request inclusion</li>
<li>Provide the repository URL and a brief description of your solution</li>
<li>Our team will review your submission and add it to our automated collection system</li>
<li>Update your repository status to "Internal" or "Public" (note that your local organisation may have policies in place that require admin access to do so. In this instance please contact your local GitHub organisation owner.)</li>
<li>Your repository will be included in the Solutions Exchange.</li>
</ol>
<h5>Best Practices for Solutions</h5>
<ul>
<li><strong>Descriptive Names:</strong> Use clear, descriptive repository names that explain the purpose</li>
<li><strong>Comprehensive Descriptions:</strong> Write detailed descriptions explaining the healthcare problem you're solving</li>
<li><strong>Active Maintenance:</strong> Respond to issues, update dependencies, and maintain your projects</li>
<li><strong>Security First:</strong> Follow NHS Wales coding standards and security guidelines</li>
<li><strong>Collaboration:</strong> Welcome contributions from other NHS Wales developers</li>
<li><strong>Documentation:</strong> Keep documentation up-to-date as your solution evolves</li>
</ul>
</div>
</div>
</div>
<!-- GitHub Best Practices -->
<div class="accordion-item">
<h2 class="accordion-header" id="githubBestPracticesHeading">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#githubBestPractices" aria-expanded="false" aria-controls="githubBestPractices">
<i class="fab fa-github me-2"></i>GitHub Best Practices for NHS Wales
</button>
</h2>
<div id="githubBestPractices" class="accordion-collapse collapse" aria-labelledby="githubBestPracticesHeading" data-bs-parent="#guidesAccordion">
<div class="accordion-body">
<p>Follow these guidelines to maintain high-quality, secure, and collaborative repositories within the NHS Wales ecosystem.</p>
<h5>Repository Setup</h5>
<ul>
<li><strong>Clear Repository Names:</strong> Use descriptive names that explain the project's purpose</li>
<li><strong>Comprehensive README:</strong> Include purpose, installation, usage, and contribution guidelines</li>
<li><strong>LICENSE File:</strong> Choose an appropriate open-source license (MIT or Apache 2.0 recommended)</li>
<li><strong>CONTRIBUTING.md:</strong> Provide clear guidelines for how others can contribute</li>
<li><strong>.gitignore:</strong> Exclude sensitive files and build artifacts</li>
<li><strong>Issue Templates:</strong> Create templates for bug reports and feature requests</li>
</ul>
<h5>Security Considerations</h5>
<ul>
<li><strong>No Sensitive Data:</strong> Never commit passwords, API keys, or patient data</li>
<li><strong>Environment Variables:</strong> Use .env files for configuration (and include .env in .gitignore)</li>
<li><strong>Security Alerts:</strong> Enable GitHub security alerts and dependency scanning</li>
<li><strong>Information Governance:</strong> Follow NHS Wales information governance policies</li>
<li><strong>Code Scanning:</strong> Use GitHub's built-in security scanning tools</li>
<li><strong>Dependency Management:</strong> Keep dependencies up-to-date and review security advisories</li>
</ul>
<h5>Collaboration Workflows</h5>
<ul>
<li><strong>Meaningful Commits:</strong> Write clear, descriptive commit messages</li>
<li><strong>Feature Branches:</strong> Create separate branches for new developments</li>
<li><strong>Pull Requests:</strong> Use pull requests for code reviews and collaboration</li>
<li><strong>Code Reviews:</strong> Have team members review code before merging</li>
<li><strong>Release Management:</strong> Tag releases with semantic versioning (v1.0.0, v1.1.0, etc.)</li>
<li><strong>Continuous Integration:</strong> Set up automated testing and deployment where appropriate</li>
</ul>
<h5>Documentation Standards</h5>
<ul>
<li><strong>API Documentation:</strong> Document all APIs with examples</li>
<li><strong>User Guides:</strong> Provide step-by-step guides for end users</li>
<li><strong>Developer Documentation:</strong> Include setup instructions for development environments</li>
<li><strong>Changelog:</strong> Maintain a changelog documenting all significant changes</li>
<li><strong>Architecture Documentation:</strong> Explain the technical architecture and design decisions</li>
</ul>
</div>
</div>
</div>
<!-- GitHub GIG Cymru Resources -->
<div class="accordion-item">
<h2 class="accordion-header" id="githubResourcesHeading">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#githubResources" aria-expanded="false" aria-controls="githubResources">
<i class="fab fa-github me-2"></i>GitHub GIG Cymru Resources
</button>
</h2>
<div id="githubResources" class="accordion-collapse collapse" aria-labelledby="githubResourcesHeading" data-bs-parent="#guidesAccordion">
<div class="accordion-body">
<p>Essential GitHub repositories containing guides, best practices, and tools specifically designed for NHS Wales teams.</p>
<h5>Getting Started Resources</h5>
<div class="row mb-4">
<div class="col-md-6 mb-3">
<div class="card h-100">
<div class="card-body">
<h6 class="card-title">
<i class="fas fa-rocket me-2 text-primary"></i>
<a href="https://github.com/GIGCymru/GitHub-GIG-Cymru-Starter-Guide" target="_blank" class="text-decoration-none">Starter Guide</a>
</h6>
<p class="card-text small">Complete beginner's guide to using GitHub within the NHS Wales environment. Perfect for new users getting started.</p>
</div>
</div>
</div>
<div class="col-md-6 mb-3">
<div class="card h-100">
<div class="card-body">
<h6 class="card-title">
<i class="fas fa-cloud me-2 text-success"></i>
<a href="https://github.com/GIGCymru/GitHub-GIG-Cymru-CodeSpaces" target="_blank" class="text-decoration-none">CodeSpaces Guide</a>
</h6>
<p class="card-text small">Learn how to use GitHub CodeSpaces for cloud-based development within NHS Wales projects.</p>
</div>
</div>
</div>
</div>
<h5>Data & File Management</h5>
<div class="row mb-4">
<div class="col-md-6 mb-3">
<div class="card h-100">
<div class="card-body">
<h6 class="card-title">
<i class="fas fa-save me-2 text-info"></i>
<a href="https://github.com/GIGCymru/Best-Practice-for-Backing-up-Files-to-GitHub/" target="_blank" class="text-decoration-none">File Backup Best Practices</a>
</h6>
<p class="card-text small">Comprehensive guide on safely backing up and version controlling files using GitHub while maintaining data security.</p>
</div>
</div>
</div>
<div class="col-md-6 mb-3">
<div class="card h-100">
<div class="card-body">
<h6 class="card-title">
<i class="fas fa-chart-bar me-2 text-warning"></i>
<a href="https://github.com/GIGCymru/Power-BI-Backup-to-GitHub" target="_blank" class="text-decoration-none">Power BI Backup Guide</a>
</h6>
<p class="card-text small">Specific instructions for backing up Power BI reports and datasets to GitHub for version control and collaboration.</p>
</div>
</div>
</div>
</div>
<h5>Governance & Security</h5>
<div class="row mb-4">
<div class="col-md-6 mb-3">
<div class="card h-100">
<div class="card-body">
<h6 class="card-title">
<i class="fas fa-shield-alt me-2 text-danger"></i>
<a href="https://github.com/GIGCymru/GitHub-Information-Governance" target="_blank" class="text-decoration-none">Information Governance</a>
</h6>
<p class="card-text small">Essential information governance guidelines for using GitHub within NHS Wales, including data protection and compliance requirements.</p>
</div>
</div>
</div>
<div class="col-md-6 mb-3">
<div class="card h-100">
<div class="card-body">
<h6 class="card-title">
<i class="fas fa-database me-2 text-secondary"></i>
<a href="https://github.com/GIGCymru/SSMS-Backup-with-GitHub" target="_blank" class="text-decoration-none">SSMS Backup Guide</a>
</h6>
<p class="card-text small">Best practices for backing up SQL Server Management Studio (SSMS) scripts and database objects to GitHub safely and securely.</p>
</div>
</div>
</div>
</div>
<div class="alert alert-info">
<h6 class="alert-heading"><i class="fas fa-info-circle me-2"></i>Access Requirements</h6>
<p class="mb-0">These resources are available to NHS Wales staff with GitHub GIG Cymru access. Some repositories may require specific permissions. Contact your local IT support or the GitHub GIG Cymru team if you need access to any of these resources.</p>
</div>
<h5>Additional Support</h5>
<p>For questions about any of these resources or to request additional guides, please:</p>
<ul>
<li>Check the repository's README and documentation</li>
<li>Review existing issues in the repository</li>
<li>Contact the GitHub GIG Cymru team for support</li>
<li>Join community discussions in repository issue sections</li>
</ul>
</div>
</div>
</div>
<!-- Quality Score Guide -->
<div class="accordion-item">
<h2 class="accordion-header" id="qualityScoreHeading">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#qualityScore" aria-expanded="false" aria-controls="qualityScore">
<i class="fas fa-star me-2"></i>Understanding Quality Scores
</button>
</h2>
<div id="qualityScore" class="accordion-collapse collapse" aria-labelledby="qualityScoreHeading" data-bs-parent="#guidesAccordion">
<div class="accordion-body">
<p>The Solutions Exchange uses an intelligent quality scoring system to help you identify well-maintained, reliable, and valuable healthcare solutions. This guide explains how quality scores are calculated and what they mean.</p>
<h5>What is a Quality Score?</h5>
<p>The quality score is a numerical value between <strong>30-100</strong> that reflects the overall quality and reliability of a repository. Higher scores indicate solutions that are:</p>
<ul>
<li>Well-documented and described</li>
<li>Actively maintained and updated</li>
<li>Popular within the NHS Wales community</li>
<li>Built using modern technology stacks</li>
<li>Demonstrating good development practices</li>
</ul>
<h5>Quality Score Calculation</h5>
<p>The algorithm evaluates multiple factors to calculate an objective quality score:</p>
<div class="row mb-4">
<div class="col-md-6">
<div class="card bg-light h-100">
<div class="card-body">
<h6 class="card-title"><i class="fas fa-star text-primary me-2"></i>Base Score: 50 points</h6>
<p class="card-text small">Every repository starts with a baseline score of 50 points, ensuring all solutions have a foundation score.</p>
</div>
</div>
</div>
<div class="col-md-6">
<div class="card bg-light h-100">
<div class="card-body">
<h6 class="card-title"><i class="fas fa-heart text-danger me-2"></i>Community Engagement: +20 points</h6>
<p class="card-text small">GitHub stars from the community indicate value and usefulness (up to 20 points based on star count).</p>
</div>
</div>
</div>
</div>
<div class="row mb-4">
<div class="col-md-6">
<div class="card bg-light h-100">
<div class="card-body">
<h6 class="card-title"><i class="fas fa-clock text-success me-2"></i>Recent Activity: +10 points</h6>
<p class="card-text small">Repositories with recent commits show active maintenance and ongoing development.</p>
</div>
</div>
</div>
<div class="col-md-6">
<div class="card bg-light h-100">
<div class="card-body">
<h6 class="card-title"><i class="fas fa-file-alt text-info me-2"></i>Good Documentation: +15 points</h6>
<p class="card-text small">Repositories with comprehensive descriptions (over 20 characters) receive bonus points for clarity.</p>
</div>
</div>
</div>
</div>
<div class="row mb-4">
<div class="col-md-6">
<div class="card bg-light h-100">
<div class="card-body">
<h6 class="card-title"><i class="fas fa-code text-warning me-2"></i>Technology Stack: +10 points</h6>
<p class="card-text small">Repositories using identified programming languages demonstrate technical implementation.</p>
</div>
</div>
</div>
<div class="col-md-6">
<div class="card bg-light h-100">
<div class="card-body">
<h6 class="card-title"><i class="fas fa-chart-line text-secondary me-2"></i>Development Activity: +15 points</h6>
<p class="card-text small">Repository size and activity indicators show substantial development effort (variable points based on size).</p>
</div>
</div>
</div>
</div>
<h5>Quality Score Ranges</h5>
<div class="row mb-4">
<div class="col-md-4 mb-3">
<div class="text-center p-3 border rounded bg-success text-white">
<h4 class="mb-1">80-100</h4>
<h6 class="mb-2">Excellent</h6>
<p class="small mb-0">High-quality solutions with excellent documentation, active maintenance, and community engagement. These solutions are automatically featured.</p>
</div>
</div>
<div class="col-md-4 mb-3">
<div class="text-center p-3 border rounded bg-warning text-dark">
<h4 class="mb-1">60-79</h4>
<h6 class="mb-2">Good</h6>
<p class="small mb-0">Solid solutions with good practices. May be featured if they have additional qualifying factors like community stars or specific technology stacks.</p>
</div>
</div>
<div class="col-md-4 mb-3">
<div class="text-center p-3 border rounded bg-secondary text-white">
<h4 class="mb-1">30-59</h4>
<h6 class="mb-2">Developing</h6>
<p class="small mb-0">Projects in development or with basic documentation. Still valuable but may benefit from additional documentation or maintenance.</p>
</div>
</div>
</div>
<h5>Featured Solutions Criteria</h5>
<p>Solutions are automatically marked as "Featured" when they meet specific quality thresholds:</p>
<ul>
<li><strong>Automatic Featured:</strong> Quality score ≥ 75 points</li>
<li><strong>Community Featured:</strong> Quality score ≥ 65 points + GitHub stars from community</li>
<li><strong>Technology Featured:</strong> Quality score ≥ 60 points + identified programming language</li>
</ul>
<h5>Improving Your Solution's Quality Score</h5>
<div class="alert alert-info">
<h6 class="alert-heading"><i class="fas fa-lightbulb me-2"></i>Tips for Higher Scores</h6>
<ul class="mb-0">
<li><strong>Write clear descriptions:</strong> Explain what your solution does and how it helps healthcare</li>
<li><strong>Stay active:</strong> Regular commits and updates show ongoing maintenance</li>
<li><strong>Engage the community:</strong> Encourage colleagues to star useful repositories</li>
<li><strong>Use modern tech:</strong> Specify the programming language and technology stack</li>
<li><strong>Document thoroughly:</strong> Include README files, API docs, and usage examples</li>
<li><strong>Maintain regularly:</strong> Respond to issues and keep dependencies updated</li>
</ul>
</div>
<h5>Understanding the Algorithm</h5>
<p>The quality scoring system is designed to be:</p>
<ul>
<li><strong>Objective:</strong> Based on measurable repository metrics</li>
<li><strong>Fair:</strong> All repositories start with equal baseline scores</li>
<li><strong>Transparent:</strong> Clear criteria that developers can influence</li>
<li><strong>Dynamic:</strong> Scores update as repositories evolve and improve</li>
<li><strong>Healthcare-focused:</strong> Optimized for NHS Wales development practices</li>
</ul>
<div class="alert alert-primary">
<h6 class="alert-heading"><i class="fas fa-info-circle me-2"></i>Note on Scoring</h6>
<p class="mb-0">Quality scores are calculated automatically when repository data is refreshed. The algorithm includes small randomization elements to account for factors that can't be measured directly from GitHub metrics. This ensures a fair distribution while maintaining objectivity in the core scoring criteria.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Featured Solutions Section -->
<section class="featured-solutions py-5 bg-light mt-5">
<div class="container">
<div class="d-flex justify-content-between align-items-center mb-5">
<h2>Featured Solutions</h2>
<small class="text-muted">
<i class="fas fa-star me-1"></i>
Automatically selected based on quality criteria
</small>
</div>
<div id="featuredSolutionsList" class="row">
<!-- Featured solutions will be loaded here dynamically -->
</div>
<!-- Fallback content if no featured solutions qualify -->
<div id="featuredFallback" class="row" style="display: none;">
<div class="col-md-4 mb-4">
<div class="card h-100 featured-card">
<img src="assets/img/information.jpg" class="card-img-top" alt="ED Analysis Forecast">
<div class="card-body">
<h5 class="card-title">ED Analysis Forecast</h5>
<p class="card-text">Advanced emergency department forecasting tools to predict patient flow and optimize resource allocation.</p>
</div>
</div>
</div>
<div class="col-md-4 mb-4">
<div class="card h-100 featured-card">
<img src="assets/img/network image.jpg" class="card-img-top" alt="Data Analytics Platform">
<div class="card-body">
<h5 class="card-title">Data Analytics Platform</h5>
<p class="card-text">Comprehensive analytics solution for healthcare data processing and visualization.</p>
</div>
</div>
</div>
<div class="col-md-4 mb-4">
<div class="card h-100 featured-card">
<img src="assets/img/information.jpg" class="card-img-top" alt="Clinical Decision Support">
<div class="card-body">
<h5 class="card-title">Clinical Decision Support</h5>
<p class="card-text">AI-powered tools to assist healthcare professionals in making informed clinical decisions.</p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer>
<div class="container">
<div class="d-flex footer-navbar col-12">
<div class="col-lg-12 mb-12 p-2 flex-fill footer-logo">
<img class="nav-large-image" src="assets/img/171259-nhs-logo-blue.png" alt="NHS Wales | GIG CYMRU Logo">
</div>
<section class="p-2 flex-fill footer-section">
<ul class="justify-content-center">
<li><a href="https://dhcw.nhs.wales//use-of-site/accessibility/" class="nav-link" target="_self">Accessibility statement</a></li>
<li><a href="https://dhcw.nhs.wales//use-of-site/terms-of-use/" class="nav-link" target="_self">Terms of use</a></li>
<li><a href="https://dhcw.nhs.wales//use-of-site/freedom-of-information/" class="nav-link" target="_self">Freedom of information</a></li>
<li><a href="https://dhcw.nhs.wales//use-of-site/privacy-policy/" class="nav-link" target="_self">Privacy Policy</a></li>
</ul>
</section>
</div>
<div class="builtBy">
Built by <a href="https://dhcw.nhs.wales/our-programmes/national-data-resource1/" target="_self">NDR - National Data Resource</a>
</div>
</div>
</footer>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<script>
// Load featured solutions when page loads
async function loadFeaturedSolutions() {
try {
const response = await fetch('data/repositories.json');
const repositories = await response.json();
displayFeaturedSolutions(repositories);
} catch (error) {
console.error('Error loading featured solutions:', error);
document.getElementById('featuredFallback').style.display = 'flex';
}
}
// Display featured solutions based on enhanced data
function displayFeaturedSolutions(repositories) {
const featuredContainer = document.getElementById('featuredSolutionsList');
const fallbackContainer = document.getElementById('featuredFallback');
// Get repositories marked as featured and select 3 at random
const allFeaturedRepos = repositories.filter(repo => repo.featured === true);
// Shuffle and select 3 random featured solutions
const shuffledFeatured = allFeaturedRepos.sort(() => 0.5 - Math.random());
const featuredRepos = shuffledFeatured.slice(0, 3); // Show exactly 3 random featured solutions
if (featuredRepos.length > 0) {
featuredContainer.innerHTML = featuredRepos.map(repo => createFeaturedCard(repo)).join('');
featuredContainer.style.display = 'flex';
fallbackContainer.style.display = 'none';
} else {
featuredContainer.style.display = 'none';
fallbackContainer.style.display = 'flex';
}
}
// Create featured solution card
function createFeaturedCard(repo) {
const isPublic = repo.private === false;
const lastUpdated = new Date(repo.updated_at).toLocaleDateString('en-GB');
const allTags = repo.all_tags || [...(repo.topics || []), ...(repo.generated_tags || [])];
const displayTags = allTags.slice(0, 3); // Show first 3 tags
const qualityScore = repo.quality_score || 0;
// Choose appropriate image based on tags or default
let cardImage = 'assets/img/information.jpg';
const tagString = allTags.join(' ').toLowerCase();
if (tagString.includes('analytics') || tagString.includes('data')) {
cardImage = 'assets/img/network image.jpg';
}
return `
<div class="col-md-4 mb-4">
<div class="card h-100 featured-card">
<img src="${cardImage}" class="card-img-top" alt="${repo.name}">
<div class="card-body">
<div class="d-flex justify-content-between align-items-start mb-2">
<h5 class="card-title">${repo.name}</h5>
<span class="badge ${isPublic ? 'bg-success' : 'bg-primary'} ms-2">
<i class="fas ${isPublic ? 'fa-globe' : 'fa-lock'} me-1"></i>
${isPublic ? 'PUBLIC' : 'INTERNAL'}
</span>
</div>
<p class="card-text text-muted">
${repo.description || 'NHS Wales healthcare solution providing essential functionality for clinical and administrative workflows.'}
</p>
<!-- Quality Score -->
<div class="mb-2">
<span class="badge ${qualityScore >= 80 ? 'bg-success' : qualityScore >= 60 ? 'bg-warning text-dark' : 'bg-secondary'} me-2">
<i class="fas fa-star me-1"></i>
Quality: ${qualityScore}/100
</span>
<i class="fas fa-crown text-warning" title="Featured Solution"></i>
</div>
<!-- Tags -->
<div class="mb-3">
${displayTags.map(tag => {
const isGenerated = repo.generated_tags && repo.generated_tags.includes(tag);
return `<span class="badge ${isGenerated ? 'bg-info' : 'bg-secondary'} me-1 mb-1" title="${isGenerated ? 'AI-generated tag' : 'User-defined tag'}">${tag}</span>`;
}).join('')}
${allTags.length > 3 ? `<span class="badge bg-light text-dark">+${allTags.length - 3} more</span>` : ''}
</div>
<!-- Organization and Last Updated -->
<div class="mb-3">
<small class="text-muted d-block">
<i class="fas fa-building me-1"></i>
${getOrganisationFullName(repo.owner.login)}
</small>
<small class="text-muted">
<i class="fas fa-clock me-1"></i>
Updated: ${lastUpdated}
</small>
</div>
<!-- Action Buttons -->
<div class="mt-auto">
<a href="${repo.html_url}" target="_blank" class="btn btn-outline-primary btn-sm">
<i class="fab fa-github me-1"></i>
View Repository
</a>
${!isPublic ? `<a href="guides.html#signup" class="btn btn-primary btn-sm ms-2">
<i class="fas fa-lock me-1"></i>
Sign In Required
</a>` : ''}
</div>
</div>
</div>
</div>
`;
}
// Helper function to map organization names
function getOrganisationFullName(login) {
const orgMapping = {
'NHS-Executive': 'NHS Executive',
'DHCW-Digital-Health-and-Care-Wales': 'Digital Health and Care Wales',
'GIGCymru': 'GitHub GIG Cymru',
'NHS-Wales': 'NHS Wales',
'Betsi-Cadwaladr-UHB': 'Betsi Cadwaladr UHB',
'Cardiff-and-Vale-UHB': 'Cardiff and Vale UHB',
'Cwm-Taf-Morgannwg-UHB': 'Cwm Taf Morgannwg UHB',
'Hywel-Dda-UHB': 'Hywel Dda UHB',
'Swansea-Bay-UHB': 'Swansea Bay UHB',
'Aneurin-Bevan-UHB': 'Aneurin Bevan UHB',
'Powys-Teaching-HB': 'Powys Teaching Health Board'
};
return orgMapping[login] || login.replace(/-/g, ' ');
}
document.addEventListener('DOMContentLoaded', loadFeaturedSolutions);
</script>
</body>
</html>